0
1
mirror of https://git.sb/baoshuo/OI-codes.git synced 2024-12-01 02:36:26 +00:00
OI-codes/AtCoder/ABC246/C/data/004.in

3 lines
1.9 MiB (Stored with Git LFS)

200000 1 1000000000
181571386 782212941 462924312 83553915 668230455 697595826 161105952 646357082 808429600 264872844 785397328 539829962 454994199 964944766 765377291 106242703 345401750 758434454 682709771 232623640 149774547 556633625 43791356 214555401 53810513 928013655 679197841 274316892 617790756 349587811 201058694 324617116 929659589 674282281 899592810 531001081 27014167 31135808 771791314 457425993 598079412 905286658 618781801 646533799 83206133 33830765 452490809 998938656 265182721 28826772 369384137 75395681 812182748 39121223 519485111 63661255 10909132 945440940 345844481 722398264 768145539 609881974 336778224 895499086 462712809 542155973 943933648 134726396 597396862 115889379 638868014 497341599 663848041 993538012 930374898 695654136 47859213 752910179 453498450 455362626 810454574 829467248 800075661 862977490 973007067 91373810 226143586 356761674 833005935 908557751 355858426 343903710 58142189 896523357 618395740 614021718 928696526 447258268 50748813 385646245 667701853 9163832 920696442 646757383 861803937 621202253 142340567 497480892 522574283 848334048 825789061 763795944 796825372 738701880 171675324 518416240 781118634 868738440 694320319 335853299 731494214 463250104 734371028 803674291 176717868 102450941 527338156 730548424 479990119 463009132 446559105 442325793 337109928 58874255 631727 749450361 99855479 26863477 359190893 15253230 530216349 877984668 255277216 683244722 123380508 685624817 548810759 539638280 326554153 3080569 951506713 319233978 111471818 249772293 908607476 660504067 136527978 356417376 260613829 608344705 577102981 152711793 438774424 527782748 973432178 778144975 485309766 958734670 199115047 269261681 632014548 424266269 5829340 893938320 150072665 197321450 219261178 796450049 938363554 862576593 376703713 970818954 822051405 706799435 183068508 589426196 657432867 302830404 5399848 427487175 120378863 569052066 907485253 397378591 110434065 352834872 481514324 19433379 379867461 918455790 298002179 129234549 195646923 887259842 69357170 588331247 42719008 613074172 899963899 280701509 119755448 519729629 418679345 55473209 980823788 787879744 62523728 58476545 821903451 363534456 784019569 414975544 373866035 291178826 938550941 310188020 550035052 190594646 560747782 3586703 887397144 263837274 953686575 569574596 717700102 960154148 568583132 365849665 887828726 831656122 701994740 545926829 262606217 798280212 702431413 433259352 746308519 729024716 576104514 398022581 553980585 318815271 121431241 375202551 482657373 687936689 759388027 6832249 224262629 415417153 554693861 37402049 181786073 62073084 811593222 51894179 612482881 823776332 623872588 652613741 314024434 69070565 268796639 61125441 159491299 732187926 559809812 60054310 845194858 422704940 463781548 699391542 751177154 573481316 887061109 120232043 324268855 319444044 316401191 643355844 749585089 167055142 68797116 243415509 114244608 545139159 222666296 208391613 770521085 54974777 967901328 708446303 765323400 186682418 706945774 70724781 469609109 81596461 15154916 862052352 212715196 148698802 875299970 659627237 968589933 313114964 964177770 982130897 164285494 487270895 763234924 860405888 306046831 944977072 428259109 354452369 127464426 880809174 308900264 288375913 234199944 882063926 357129241 656375321 121668164 864497205 552361689 978794961 131298699 639307555 335526165 164713232 494778360 751931896 518211911 815121777 547642060 474047751 319933031 287081808 813437206 610011362 460125693 978667860 761534372 62755771 440587524 200675587 627145097 156473040 349923962 901542289 436387315 535622918 803596409 293565054 187174254 433900660 872389830 58485950 523457935 768100478 488797283 561566797 922779790 408697974 863248291 188381941 783363123 983278053 219889876 464216484 159929183 355385811 664216914 273105768 859127892 889439385 31484408 487260313 304690607 490215451 522968779 656850420 153521913 109083123 74283262 169727972 973983767 196654319 6034563 604031361 303149037 737980700 150912562 869967983 938313434 931415345 209844021 802535745 254107240 387652263 632271509 445540327 610695609 156224242 280511769 351548741 243294342 678883811 460389071 504602591 237750346 577070394 958304048 697423036 618278911 966634692 307056903 9535832 354554244 655656501 177995125 733555059 486576263 559944361 516895072 857040097 505189994 327043669 880637569 102988550 369046634 252508046 965761509 757637462 229361106 439822140 540398392 557504427 138007078 481420642 882479888 773034099 655995570 205944854 766084564 502521185 708390509 49889294 391845512 837911968 950327046 634924873 625551793 163160837 644823887 606243084 9786199 117665476 765384 895796428 348912378 400116489 340512371 967480147 566118552 820680515 450627705 588087751 802269050 59193136 385677896 124991186 640310926 58205154 582961408 878428718 771574901 311028547 462306489 11838371 186703787 40431553 330875407 486656453 454885405 34997284 626540345 184276496 814021823 165043075 745618096 399108974 140501833 832310298 449491761 744788745 32504022 461355139 724070506 414012435 131462380 570989183 286371500 209969256 757943099 363959508 578977969 670232362 368733059 718148862 341677918 785036196 394478577 90381592 58609701 255295352 532572096 580387543 223328960 885374423 445772202 864716705 753968419 160993837 766218107 324818257 736183662 463579210 723141225 954681088 602214038 883103823 349294489 922025138 589319116 291947352 665919915 681539908 240958265 902514343 332694998 688492076 886121281 752980472 14678093 251955348 681767995 539066285 693582684 61000205 836987331 634396343 638242394 773903785 344112665 303127314 616867399 605968187 384127334 188132249 761454347 864412052 984616011 798334333 684310017 901307643 414360793 589599847 7088068 211013516 364310216 469833532 651709400 555494715 276338834 926790811 331817581 236605740 953260623 100064467 488187806 417071704 602503245 408654482 531991436 259448873 525119252 118571976 53809242 585834113 608170608 171604668 813445892 405900385 544902796 448122446 614560112 988323077 668978590 254503896 11391349 268316625 295118559 986549832 435279119 679214672 323169199 435426754 52582345 450497460 316846816 771340720 212773926 476243554 683393517 558562581 186540803 797832959 604072299 971446075 566396183 314618416 792752655 820435717 2089947 784050354 987956227 912494091 845955456 813731511 45452150 478875777 410805242 568575920 845650641 211339009 989197934 578020032 522223281 663632118 291002053 560891491 840594897 173306003 596320481 947546868 914650050 134796904 923883544 321762559 688076866 403497645 8059136 453754919 699534511 107506598 821770502 491651733 41721382 509650775 819382997 185393228 805263473 847768989 379706134 505109721 780254211 670774478 447008305 927995324 500703164 248939261 742863635 707376616 825478379 34164062 949033575 449092256 189528882 195041756 969757711 218183983 809593325 548364524 543276366 762388587 688000800 595588382 886996892 761400559 923843621 422638312 760571789 162076895 723222042 595204991 223082523 77007414 492988890 986754891 684996132 292978390 450032144 69873900 797522227 997486435 383175306 750949815 45809890 78317427 183736001 26306762 662666356 336790796 684405689 706630268 646780341 272055926 528686829 473850093 81484708 916266891 79102374 26035192 242163197 435454961 933091263 29793407 506094495 994226656 964982661 85887596 565894274 885157823 973021811 828711063 175221722 957420014 818930983 901688449 923501702 547326813 848474819 442511466 490328947 585585961 323648668 158160747 558487576 706472426 114099241 989797891 207121575 721171341 190620247 683209206 254639894 370127957 482632304 758375106 190407379 952671871 331879316 308582207 637908703 468805572 939801442 957403758 500274225 178833463 46495683 702365747 340219167 782733880 848173463 894743661 862273433 18848545 558041751 156754344 561516932 962621010 939504743 522825648 387464252 23761035 707957783 236609795 779308787 619381092 78041221 992111043 859586022 968166331 942741710 479528355 262452743 142534802 422935207 191476326 396792385 644995125 506598853 547090292 955341244 41342731 564031140 983810334 898769053 885020481 897758341 290318105 612756730 652306738 396874442 643507982 567682556 487398818 831486721 604576275 360485270 38721143 781966505 248319775 311970482 664275532 511205224 185725309 888843926 67852697 532129170 129966082 96830425 183048512 220839983 263509582 850420958 133191585 642850029 727691904 892630544 208546343 667884109 371901092 174577066 678253549 676434601 561745174 938055588 925316200 14000787 483981418 725078852 840659238 982459598 643768271 582836877 966120011 815326687 599145188 235092730 313980366 694692326 932592625 595628083 763094773 611988231 301810116 572175846 621833423 531781228 662815093 576847691 467168348 143687223 425001344 161470963 474320864 9656224 917353927 852658981 219837878 269264539 972240384 664730619 217319696 115714737 327215041 912036369 95184419 578859275 14486417 903343807 383301254 400648553 48189841 868080077 709524018 769792188 8288939 287805774 187414215 275658255 916291401 700434944 447571596 557389789 36225435 50864964 444926911 174189393 524972694 59419896 522743497 712791930 317257898 242968883 973210044 127943262 632367565 753136093 10742164 426060613 864859288 449946068 251567195 389068242 331018053 109125605 863467655 53161140 228441610 812431053 492811753 173520250 822809209 567722059 530853097 115280197 401538836 378614348 517404410 358485239 919496509 529145141 380208670 206251729 438304968 204869286 302787319 928121127 131304872 55627240 833157975 806288344 104216972 498203099 225993673 902291653 762828388 695171536 449371255 996388951 984445081 215936608 618402189 162839439 257177781 278253574 803397851 214387740 700779840 56920126 274826334 44598855 98833791 154417849 124885774 6121886 878547497 703850142 279027630 730973118 565416374 318073812 455352937 387777304 646608004 94838834 826269196 533295694 836934902 769954891 699396656 299512200 242448487 621726818 380886274 680153153 642618874 1017591 282810523 724663644 966245437 838359988 86148200 545157289 271440614 318497166 997606267 870967466 950260095 386464285 99509599 642695225 337233974 822100806 750976519 610478080 588111 667567594 645544695 155725969 742016907 459093439 660717816 831220093 709283690 815130875 218721489 217454263 209884241 923863093 305764944 858623195 838565073 7633168 259507764 439751518 364358134 658101597 874433669 979846957 919666765 562624434 253802875 526271458 849340021 69942385 368882894 694521200 73574160 608477629 134362126 111659038 661285878 754698035 558599406 203195590 12060468 336013905 142610814 187756205 404923650 178556781 331201493 893163528 886807872 767310303 543580573 278501952 603491176 533083562 360989705 861613502 992798940 748270810 851128254 82210965 946182094 214297195 882738350 608943550 781474257 865161081 563468307 737486049 582485565 660549665 796023947 391523833 236286649 817374288 237497701 749694062 508603744 741834184 589548225 334442716 415449216 586478755 939099071 356803824 624316420 935588256 783890894 338863733 168595724 999581167 600536611 588141571 112821871 915929374 163140344 919194431 425692893 290672877 614275324 281412050 470838279 81271723 605610261 214186973 735206745 925728857 501172603 222798671 214287535 436457120 702847119 87609096 187527691 317673554 941368232 257864328 903266533 879143365 93434304 559906231 994783065 98372422 899570009 344546612 351218637 416701367 489400247 172478277 933848660 873748077 718325725 640200154 283769589 435763247 356538216 471974614 56995127 842406183 387845397 367080570 539775167 403655227 354010691 465800981 785805633 971284822 608146838 633880562 655497885 29266783 617089560 56778450 19865193 630302058 942796756 40832087 682064409 192663193 912725981 948291161 330499160 695248529 172212155 484823717 549459168 808114602 410968711 87871733 343794088 198321969 57388852 960298907 846045260 112915628 545557209 884390126 938038413 827953017 438012133 71532738 227524749 147088042 597304185 223966222 557632316 143488633 346976672 981441292 597667783 480696032 63537843 118759626 842285463 731406668 918505451 143961953 78332761 332977436 724918348 446686729 656873052 314023564 724875254 675324393 329000029 855053484 49453475 427050268 457936500 695566681 400801774 726794024 357296512 103082214 303706674 377531177 391656934 274728768 594479486 515914622 44550773 872011305 126953507 161455292 438152973 805942723 633787099 70719339 251555225 200852536 616436847 318962323 749420746 721854694 436662249 7263261 986258411 403726959 871940513 120878460 222038347 681881525 591042028 980187138 816143140 291847955 431659868 786052316 203348187 130112625 433733711 142371804 547198937 339528409 994248106 784506653 604117794 764486077 278961024 616171991 770957198 383343587 603460627 860405295 576310380 238218693 803844106 619357656 947921372 667421863 853566512 3160602 591747098 296742710 575507135 796883713 893493193 702214615 433758057 11359544 960948073 613042774 642970112 35702808 513065310 201670280 531719125 201204245 837600619 747527480 364961000 738798669 919553778 409771497 483288026 956395837 363439710 160139297 185368945 572994716 13817375 852832002 50051312 407663186 617782252 231848400 204541928 518625992 887894649 297031240 288999396 464104240 560499167 813421596 752585212 885533575 839404915 9128159 513851995 308350388 890813595 481187020 108268336 942760629 192695643 310080904 444152741 72282377 150589002 876086821 230484561 513409246 733208361 433845774 613081674 181513213 15447274 750028201 6787717 615549155 983933809 155165464 740627596 51495835 984645559 486523332 237491659 827423789 747103263 438074827 697228628 321029625 51373482 914410223 24451457 894150635 474882509 706458356 927789402 708991012 594098935 855499288 104967382 751412191 767041655 718668299 466371844 554659101 505191262 166162517 628172778 347543568 838877519 695357391 326454872 128447890 905055353 850091926 409781268 548432774 797779707 569773643 328405957 839334235 138891579 141487148 781859309 411478309 35402004 644770290 755962238 23987811 269506151 722668715 415459791 606655014 422832803 757946788 439762203 807911047 586683612 504279079 340211202 674240252 342976784 882867531 715560029 250487481 401199032 271038703 472744891 709339938 809911028 391123261 527400357 463256134 434112342 2415369 441763025 957857860 95966343 738146089 444341850 122925158 466048384 470533120 699839526 694196822 590450588 330937412 374288627 312088571 660725197 351830620 226856743 672268402 939328817 754505839 335347658 489330254 332707282 830948167 809868013 56194851 147625379 671748987 178393234 525535375 372371373 155197836 142407677 627720627 519517971 331635413 833623198 407484390 490212173 944851998 373204547 919480523 570706266 2497133 1570787 402496283 318907707 350676751 522969234 279210882 702542062 824990109 141800417 605377076 293388988 99678868 268909518 669416711 689945454 89076992 466940376 379943716 256205110 61945005 123124077 259728868 169912076 187514162 698521088 384034256 996704815 42495022 954363914 748005227 873872874 392859123 774320567 413060117 664724576 343767302 335312856 962107279 328905275 421092370 348607673 739461345 881734935 565313389 834145377 774916723 469607352 150003611 155067913 522830692 931907833 683718897 163833874 114290576 653258000 935932975 759260748 211708852 144215129 748651064 852596765 887021730 387938081 608457935 855949255 893909538 576479281 478948122 679462804 681653035 499470144 478705388 224058325 828480079 70166949 464022106 93941331 309294616 624261120 456101974 850839311 441773700 301283907 814418138 170681613 393045311 217476125 995715270 137734226 21459023 52537474 300286704 28189279 212486759 79048379 472901830 696163940 906977175 872272991 356051248 10780590 536579144 181964534 558512827 320648380 515372132 879015202 949754917 342612445 786769060 190257933 353953921 354450343 632474761 519477789 790815301 34111765 415052355 96809688 51859478 950762247 880916329 601275029 96680175 832377947 931666250 169153341 475965318 4750295 212009432 612164723 98589135 703644881 788746683 565512059 13585863 947619440 830210033 888913050 194615842 325531649 515140187 920340403 300907856 703511837 74268521 630039438 609250651 419957387 621682011 940282254 144490672 494589981 2298470 519904914 673561131 156664599 716928560 904032462 268370028 739042158 597836505 651376876 900989718 607532312 585588498 172346502 433352660 644814372 324923445 357084960 323072484 884502368 404342768 669259485 373480218 54408619 587366709 555022146 901565162 962887518 829252341 858746279 749670657 147886039 342245933 54445494 129621451 146841769 193736363 500617655 233137665 37783154 202387066 277268029 911729623 955220547 427092327 28795380 960182533 420609878 163045922 223836566 30778344 586171841 211119997 616601954 379719035 951209069 883264224 146374519 156940919 673220379 800509191 517990994 401183184 53085781 174726100 117898132 988918729 434759143 902797570 946288459 302160944 689826721 778384567 868132514 850397958 779740481 147559611 867377312 85897159 72577171 166525993 601595740 534358230 37756744 899900621 392494043 32455147 55466225 530837229 338054882 665322123 107627899 352444552 489895677 557453872 184161053 913193417 41614001 514277011 349109770 224369529 141923031 970251078 682402583 330049525 91552671 294107535 315279391 206432842 85107227 714072411 187068810 811197285 175958394 109015999 582808669 311336358 787543243 500734344 797554962 434341513 468159926 243827264 893113437 75003525 27301785 702776969 806481635 863416967 903710969 478887180 321327411 341773880 109673412 275086651 683479900 941904545 597971249 698574966 188501495 80138698 105186713 397364529 469235549 304414253 707490274 456163619 590092392 182009485 845196171 989187829 45517935 337666847 918308059 149376421 687914329 763192872 892928280 545286124 479382221 854273318 937486225 917987817 835141552 534250184 105733810 13780846 381456733 211351643 991299624 22739820 929725537 405365028 993116786 1968095 563800159 223248593 239685938 358800588 211281576 116174938 378986643 412547212 763977922 775062341 920157417 625718779 932764091 783117274 449878828 997365975 262899532 660817227 731367539 885038843 709920125 571194398 475850508 207270760 367759779 623552518 999879446 462919443 257179554 339595955 81766518 375558693 534322769 93791425 303631720 366802231 119242621 47559603 966516483 638880901 630316164 123947311 149248382 639041666 521552355 273873136 174433121 653297329 339488044 312151527 661948636 850344942 153570452 520972504 641474041 80289521 398807625 587823937 369558017 74085670 514273436 282451837 848542103 707327266 164698309 877493751 185057519 868252304 394362598 997602039 81352795 573331253 248455054 442537998 542719654 213100512 598167998 286402385 169909681 638465169 31483698 347963780 629304075 413367941 629482121 557930835 732530839 199311743 844667504 109097428 329278330 20975694 261655629 781812414 530502080 156492156 856303803 501312941 880808439 434367273 682434469 442003165 276988298 28764460 128511313 784017852 693140873 250257918 870661851 996567760 112580766 428018094 567048243 809008098 513722144 875420538 893687310 318176095 968458767 983835235 358727457 586650308 478399531 441014851 462982752 893973795 251435472 720403118 245394747 359629064 65234963 194072190 748889523 414160037 556522717 186998473 49548628 628911811 326065247 760688967 391474782 176784356 129345866 70605440 587245604 564950995 639405965 646129588 586721603 353146664 613658347 73588100 434220129 990240014 893412758 660180987 917446062 217590431 321015313 642349633 877583984 491053859 844631794 349759383 92384905 432713559 756090010 791766978 708261540 722196480 12067906 638538745 773017573 404095997 950761207 713938484 877084660 73153309 550045244 729749540 205292223 113148232 324140083 218720526 581414660 981370218 368827986 245935757 580703468 928727565 804186791 395931143 668140474 171007723 971430181 696841925 894644967 448377987 785882053 563390807 683244821 36978722 662386621 354138135 86765081 377246355 535622470 774771289 732296622 583656620 665687089 764161825 666030421 36976661 471804025 63937375 397464590 757954300 35104167 429116084 837636723 971113901 663457903 730294613 25558514 663103267 547483387 924062182 198331028 536494044 549031788 468788574 154386452 678822537 287359889 988802659 48254114 13687262 453342783 496955105 932430284 756280954 99715129 731512034 788165109 604313979 889832620 314156945 372115166 418638392 520241349 699746272 643327190 365097767 294494926 332446289 939934796 329923146 585717167 551506092 49149790 635616422 461002403 337593640 760889012 784227162 844088042 998060396 878487748 692031651 169793916 456817080 676591518 541595863 500816933 499212258 640715418 212446461 334751370 495152935 446170077 37278790 435765964 548323065 338793281 661470602 772673704 435552143 264556209 40138540 459604389 509591274 154174622 106644062 107659621 194448008 270818916 364636843 783834408 44069258 41065725 525037033 356474958 253207702 674277256 288862378 810595660 844746418 305312829 781785994 894145590 305510926 592856431 543655776 4088210 158662930 144028192 625744033 377473540 904825721 229137000 831987705 681376869 55192202 630278845 944706694 495348857 958309817 439370685 179665563 545500663 472842330 633366392 943656300 629480915 89591307 886240406 198492453 907588874 590226113 279105170 685887987 80772352 912253041 135871928 997556929 728483032 88746262 56786191 501505396 18266286 77673409 760311671 709548754 954220190 431032063 844287142 58916735 130351231 766097314 699121244 218387144 702869841 420805464 680368815 98350446 529246094 502589821 901988530 229829996 504370492 509325702 954527941 171964665 552685759 888302111 120525835 237345920 924028653 248353974 793519671 98688630 680344388 43803543 5237818 724312376 577231500 340786571 30239097 36788435 432573423 426669445 87210910 809397148 336580230 245357543 671988506 268927208 234413491 638853144 45336173 458299254 975530702 463820002 847168009 391385835 370293442 984412886 752541429 477005205 867439618 810982219 137345361 765170286 295636463 307547984 580679557 807217836 949017839 938759838 915910699 933831695 981605171 871047271 464124401 445169477 291292407 394503150 637581931 272993846 863775203 420776125 496790798 555525329 963403780 680382518 170895872 725392973 978472232 775654511 605528806 791179550 293899571 761666450 308242397 466152829 568045115 125135047 760988484 626952891 643982755 101147717 760229173 193349947 534672254 222006245 668858847 474713354 287350979 610449990 8406919 277461508 638217135 100992219 376710896 398690219 434757412 271933207 939888483 390556754 724227964 949007872 329180820 230841367 742690059 279241198 778331089 778187949 23711856 875156134 387286121 313534104 581410101 619704846 556513374 549914110 58392706 49301228 559570721 213057072 906269698 557219159 639396775 310678027 743358682 790892478 703056460 903523670 784607632 342381358 853451304 98957499 171551813 125149350 951240349 886499549 196831257 806298520 565175943 711604229 283364769 832121211 282945178 176971791 229735915 572568581 565486562 386490150 510711908 567525299 123133843 571395600 501410337 226656427 886037234 864646913 426815643 514765923 758654569 12841203 707024312 263843493 176105286 544998856 285499443 533250880 795826168 753529337 692851480 858217782 565306581 379462865 689128322 929189788 91416299 920223706 325055365 668976197 694667002 296819856 382355819 490952818 866747668 859203116 545861694 278688072 471660826 989430107 254747801 64536530 454052253 85681899 878096316 443157988 842428919 475615399 744122115 872319641 7681386 246258170 579206662 780091537 451670198 676024115 641826826 430876191 880915584 696313183 874055530 527992507 368741192 74345669 799727061 107113305 451837825 73224154 233739021 451256012 456352162 663703005 956227321 257934210 195611647 969795355 402202599 787354941 980085097 267014428 657897180 336344740 25884165 45192267 642048442 387481979 153911228 961501395 105066739 985150813 420644444 277248661 469044605 247310504 97617851 473567303 49683638 940777441 793348660 141908294 956177980 382626205 826405271 894807611 528249585 36732884 201019741 44035383 997973342 803187294 80839163 296668399 107913285 709483475 226148881 810557844 860636055 918115129 404367189 424078297 722507108 934042360 280252884 61289111 129479144 822279355 742793978 21211439 571789946 16544249 791699622 459373104 731468157 5718320 54381378 371968801 300184384 640647894 524553938 755926409 533343528 920949497 641586088 514502797 474815655 20646605 556741903 773728209 921825785 369816452 992295812 3221002 624259721 973449723 874202422 986889449 375168773 826732524 28572644 523460988 119905261 384880216 791541287 345322491 522711490 231890226 538154673 782508330 325627945 829204009 71537360 337535626 320809302 653614364 630278731 734197930 828012080 97861571 643649975 417922208 223968379 896982217 55395460 812789353 158697460 71771804 339130701 331373731 661958997 879854784 532386086 408859673 225066823 28371521 161344428 512439935 160673964 707028028 655703650 867760559 452114236 38469357 912386850 30057787 947368482 914674002 129136615 155353924 173833214 309411691 565919911 369208633 191485360 932632971 95439492 490241770 607831096 692240571 91149056 573638391 204251392 854576857 503456380 834181472 34880436 298796444 689581878 692403196 10442722 906443888 119877837 95763050 313810797 618886269 308775318 202248763 844655180 423394280 938695175 692432426 724719166 955733044 860944002 873462386 85598220 840487930 337624576 492019591 822918446 163461182 691862057 168079399 921983082 966544107 647089764 10654615 34234374 787743246 762949936 226567295 948487451 477568448 561769864 785673985 986608 943034699 824518419 176168599 850170399 827897476 220752455 27527743 643572085 700663302 488216774 110798630 579422719 571742931 242592069 981786156 210393863 574732794 313666747 959525503 190881120 740886451 728490166 302864865 837278384 836104681 774759373 438134271 135908569 660389978 721444410 169139968 995982014 425560514 570060783 659416404 735022252 937268463 691696666 142178524 495055131 157979613 117944568 98737090 597619212 786931167 719928216 467255659 33846797 112872525 891751420 731970273 257723724 221039263 261354287 759374766 375682819 118663920 569360458 59219236 652855452 395079252 407171190 702656596 453001234 472564262 701083240 290173447 165483789 678792099 455687516 5394803 753070990 979380148 184744572 548064161 837865865 165948937 113237982 703530359 49022939 20322265 522215453 903336127 34228664 746540820 606647777 259569387 196951782 24948959 847576225 801014981 920991073 620369508 909828866 967289215 687227714 635992338 5959973 620867061 308907124 125031792 208662584 584605472 20373867 693657865 38971524 783531439 128099413 646569912 851610677 790036195 478933076 885528783 725355924 844710981 910073675 661434302 926542042 862707756 297710559 29011562 455665136 272668825 222115956 375256123 14152121 414037786 770080361 542930761 202305109 124190837 170609391 75962755 624910923 55152765 815843174 848545557 370216609 711652303 374968332 162576542 754053780 995302346 861448948 238673274 223726159 602845223 505726030 952045279 307001197 741259386 860676848 431054950 70534798 112026891 569815514 29807565 806316841 874006804 230277705 279221518 680555442 798653303 963049279 429855827 76741862 862995470 388094283 90113476 539162677 380462400 363072688 839286911 943311405 247822693 142674488 472857670 303277669 103106115 383752362 84483307 643677281 329070592 944324034 144616710 118118375 366907122 594846822 704363951 591344739 590479902 518792375 357224129 529703493 803199272 628712838 147275976 377645505 298967097 439937098 696652634 529085665 830145547 46723694 666535822 327952089 623071123 685359621 23639049 466494087 514019920 118121938 976152701 425836925 751998408 349459282 618212090 115262953 162932570 452911980 296189934 339047061 314930727 469698859 146212220 782351239 14847491 185817260 39826963 568931410 897453678 941088070 895446435 531936274 569602619 971781921 790243129 330504282 966578824 608939949 76177677 57433038 365531978 895965802 865180987 467177541 946347352 526551413 33167304 40552600 380398685 478711425 981858328 670875604 606668098 776270030 824329419 605142153 797518120 926756852 754995704 439420147 270499874 52410287 975717722 2468940 549032562 99299087 59728729 928819430 718489123 951174542 786860359 701598908 336324216 854726621 230719043 773729280 989673017 759515517 160252039 291789370 553959278 160098853 111220610 671843899 907750077 792972260 823610693 961817939 41106656 739947016 711995329 286855149 494233415 70155586 632159793 682574475 971906405 378884048 238665414 645064965 745539055 162050114 119197022 419925640 745016573 885109082 363117038 135780991 324644646 358107816 459885137 832462058 159471602 724176121 22519396 497161366 878661522 341588732 691609439 311120559 716273039 615141942 367760987 691096918 543216719 309887997 164517915 963728034 600119349 491671140 95732910 249679813 280658 390337224 497010308 32980008 654417765 180246319 292986743 774962848 32461920 688032927 829343931 146160889 81047036 728233092 763942904 505085768 749064820 350879917 887827270 575682869 986228122 291766821 577061485 519606094 780288699 670492835 953372700 487381640 14498840 330991548 139371350 209320466 674897075 743749245 308139814 130557023 220912552 141932159 950636243 490545234 785554545 479101570 406616469 760867064 737046777 155308187 471459427 957860464 551499988 813923921 470237907 960996119 727025569 622193598 251160363 346580326 138577856 301851960 422289996 452802783 602316351 397590324 424560950 490347558 572317022 794116238 472926175 266637524 556730574 548284845 307498428 180249841 566029257 662171318 79734692 384451400 844424393 434257345 388629666 856402493 149567904 138367978 450453673 510405731 269600571 575973510 393293811 829484598 455477217 476741446 813406982 9698477 905363925 378869510 319908563 231172055 517033209 76319675 562187435 684440426 99287027 210023388 304749935 594225758 823551382 629595144 662385967 613231967 774718515 795609002 777823219 43841486 842685176 21835523 21668417 625465836 721169182 337946040 755906316 711182841 306320759 124525486 328431248 456033100 69590318 244287067 545070540 320714386 550034659 791785524 831091878 21476345 801678285 321402203 52094638 490183392 859882727 779408183 164013775 444024228 268505263 153352798 776257930 209389684 79494119 513241567 428276554 516920443 156323070 651438661 725892408 343833894 172196251 822277849 598544142 863163008 614052897 659639903 233948774 504760654 279328489 1512407 452809871 725925373 816617173 394421989 648937681 113648422 225895046 402820491 353547050 939974228 918213756 237935287 901490787 407036184 686429799 248678777 915204300 19465674 368559638 488450002 241401405 945860850 362749028 741356095 600596924 759946587 548481513 410479454 932123486 147974740 241344355 25071702 984271242 766791816 177441618 499318361 726976186 416036547 33464792 427983511 848705406 290982061 661605258 585215886 557956059 221930808 726612367 903923850 202449651 730509776 972321461 668076380 767635117 22185048 518260460 545575748 432000972 727851749 705747851 293620424 477065470 313766056 24695313 494839229 590731500 696517947 317203778 224009860 893053455 344769920 357005255 381869547 874335477 403284848 460512984 515801681 657306068 205823789 160867779 647975974 780329524 179814510 729427735 654198522 486785566 820471063 251967008 686209721 456793902 246307010 608449829 369778803 332614333 614610748 440879442 901310956 180478037 784416162 576720217 434317772 838471451 288351392 701528065 977987905 453945366 17628765 110274084 466589383 857796507 589751611 152540018 236570854 852515856 829937315 621390648 446973052 243567485 347400420 3540556 9887103 328605192 803985674 971289659 882887811 519260843 603873416 656705967 925148836 533516870 394564114 368955541 474642575 522132282 545027245 752339464 818189543 680478698 712298629 486481727 829559645 768280074 108922019 799691852 738460714 496473123 914624566 283475044 107486084 679765924 888245774 437083989 202152202 679265923 285321556 594716925 761659994 909332598 258196633 146069537 238712897 708894459 216566315 63514013 168604654 963581780 52142673 587391031 327184860 390742567 961348686 551224273 668421348 175814566 188979497 105300288 986010125 348738474 808993746 904529783 858739739 42814927 484348596 295780367 72643876 874702913 404627915 470354657 296072375 339177336 480660624 763521937 719951450 469891859 647763604 874848773 174430337 642277369 80781655 533561702 47581219 756555713 683090517 245113744 559040406 686734420 522662469 90863478 744971907 900520628 684762838 884890509 447775208 710539794 111972169 294026675 861268339 364433914 967683966 750740549 886955602 479097027 506990893 640168052 902321351 566772804 441118594 507799122 851985753 562758131 959667268 486031719 837017012 881542132 911168032 869914350 866063195 747485692 520610217 698872625 727854811 342789790 287993948 896440540 515684283 832770508 532512964 886988782 66718438 288771330 347714801 683701083 977522170 208294637 476052995 366560753 947438528 862601099 790720747 701423089 200700118 70019819 755551230 889307188 713760871 163883401 285424390 400548655 905113186 587582627 355721048 246454483 690039022 348410442 372290666 810504738 547432574 115295824 265843588 885890247 235442542 147240604 716552728 242993968 830129779 282719386 695019132 28735558 996762383 783332111 793950379 540909294 467178776 740342847 482063580 344353946 487413197 892930519 420559892 273097139 644886378 584066920 417973553 612336558 190118533 104567750 729965024 382890187 940673781 152239159 777659919 453254072 786804605 722697701 562409502 26653403 741172556 336527939 694974585 848836218 726519684 474176138 152117548 720708610 896205464 735281794 842812856 855463625 107059535 867348779 36518667 642007882 376624624 206843006 525726897 872943358 131618230 982159388 948477832 287316517 25550635 896555342 479463630 579440894 579254965 769015037 460633666 399881553 114653865 625365050 5674972 59601346 268328207 325084518 1527212 813862393 650612256 627343965 338689840 24692311 248177261 46596895 49565119 29329706 384497210 448928268 404610582 434304163 339689407 298162874 552016918 791396312 859958767 906257092 414312555 857944577 153800915 292723932 794315615 409294003 989229304 252107684 856712350 630005849 733671615 418315730 288028970 62675011 161309535 679711559 155176913 810680442 798048761 442631987 821192657 604075071 901967626 39398394 363810843 194363510 115216256 908450907 675343375 958239216 871855217 462112841 995576809 456282397 295233016 747872949 878846193 888851039 818942208 774121814 360676068 33822442 519395057 427733058 495158242 987771077 32870616 121066525 184182254 900416880 603980453 351654916 531380404 224836620 303097650 272928094 344471144 52964546 311176137 585521465 504707836 889385144 286148235 920351826 629390115 485958080 948325554 380885947 160342867 183452663 136134306 723010520 5310890 186172253 333404580 576896998 434183692 512698757 405667270 92252442 390187309 172528729 351465656 770827885 780840961 189275720 299201206 935363846 304580980 385776738 223966183 432924870 546783762 573216967 791881337 218400013 430847648 363731090 25417439 283704876 91947621 454699652 460466486 837658324 915828508 948780076 401365117 140653523 770981839 910249829 531498387 359574315 459750613 162227 296009906 904895343 983588078 866637068 17565145 346711171 72405991 159735534 277009125 28989603 426518526 710968244 900938477 841404979 329807244 88067454 223987469 463461781 845495797 209354517 590354305 915342102 866631386 352495732 362797971 617194657 624449104 740002501 455556679 198282734 656979181 524906598 763134821 840491632 38264286 499657046 8952043 156483119 516617998 279049488 978465916 876009318 112618420 640953791 894998011 165380892 937973585 930054525 678989930 19055422 757265714 669925072 328547388 76213863 278731846 865996689 212345474 244729192 402991396 75553954 141527655 958586375 655600842 880293056 222257253 33005363 364324632 291825516 535904211 221850563 58442633 678078548 224443518 980944502 188460317 990442574 598375288 489954564 55844509 620280792 244571671 945320340 903313397 454151436 294824393 918831494 837719499 686642732 607280695 705790369 490440239 505261164 449361217 88316712 119686095 70263522 465226608 51905424 4174040 347759035 731715557 132509690 449714090 400588992 609364785 217148059 173444780 991152156 8564792 610579288 365490621 591017960 475663275 185106415 662538708 882422968 167442462 628269471 319003872 523919690 682332195 16999998 446837504 572869344 918747642 474124806 522418734 734226092 203477507 983260596 32091558 539153821 919840967 544135671 38527810 233969574 90331015 820556632 464054477 149683935 854198593 489701018 174886131 906122069 604119188 80207040 302052941 533890549 420304471 739459697 650592045 830349778 856840206 104886888 561082454 418056827 193633763 214292765 922287827 833128037 328048887 936915748 250824190 494181430 687383916 562748908 66005193 635859360 162734013 607146098 763654323 992279438 315111376 637095895 382216784 905548574 175954246 611959473 671827128 12898534 551229236 8155098 827575811 669158234 216542095 311686360 885708085 696541717 705255029 73271449 64036184 968886095 910448457 604971375 254180676 176658565 585915829 525236983 78185549 155141472 606241816 940081984 681088919 448745134 500036675 88784465 780081731 414513847 360985331 107634848 425674233 732576339 748492463 508081689 54265536 423082872 797601694 481439069 417271338 973405870 433401626 720285193 482994550 589532833 581326755 717602171 660278312 64673998 659277232 186843797 713118928 807932569 212521875 383403871 736546559 389601211 468943958 192990569 6685421 918452228 694284325 648776969 918769466 162353245 105006363 178829922 73680563 273854313 186831389 310341093 294422464 696865209 123792187 82408505 34354123 433083198 993753362 603519555 959763415 699888006 571696759 455733300 220546907 881096900 498261092 132613714 746528224 447268608 391318948 544946166 726576681 546657783 897231966 712587791 236216927 925512828 164320353 747791231 959484799 912130757 93571336 750651875 159179337 193891473 311595184 389297522 633317726 641315524 103290187 715081795 476605361 882463477 790620556 361445201 860246604 686900801 786505584 717535412 317827382 956790730 729707035 252350715 614105765 752710518 310261721 719505144 951563904 907622698 230790883 475164782 788415327 494958523 546549220 677816315 931657205 544881881 291854541 726791981 613249033 241574766 188817793 99091868 605142347 185416371 433883050 954376190 936418871 883550721 633143019 428030642 625599075 84413607 469466617 677621257 92418594 311059649 539523067 866069110 816046030 884655353 166171559 290813541 201215996 384661323 554557713 710359313 973655502 757148057 818080103 207900026 680254803 925908973 592650453 711424872 913401204 230684873 873472116 207229085 422194928 382890608 631728239 947175254 666069578 167461281 830402776 118975533 947562088 871820908 532812571 912414150 792581910 62053411 111938887 688216837 183239918 208857159 258083136 283292974 986254240 46198024 318224171 75140817 863331220 270809900 400026596 118606783 807115431 940007373 490744400 572846337 74387287 541759910 798880895 616837543 642253308 140245612 165638504 908375146 13183247 435675759 40395531 127988825 950728098 932311759 835976905 631711888 456476220 923310427 850196541 313527688 524508906 812365189 480885859 10709007 798062047 177143473 115631355 580511709 725763749 378875726 65048273 935913232 336287419 479143449 615342914 366274436 201310504 110327756 310044385 132872882 38949864 649118102 676920374 80870132 482795749 218305082 635183237 766185022 219342591 82498694 598965163 962864291 565163441 737556827 644093477 625507223 941657668 833834716 341944037 569261926 147066162 232484603 434471343 466712879 651495781 323757810 440488849 44621401 978589021 456166339 242289403 894928588 521748799 775987339 34259040 343340277 516480930 100602545 39489638 256896195 818111404 888333628 922257170 395089582 158559466 671164673 902238435 22005660 911689401 823490084 1140374 677584997 614978965 612238823 597429394 655910203 303487700 828034333 257841922 231988706 461840236 898864228 535914379 702031226 754695718 301067780 50600414 229283963 646365575 645772036 97549454 217886819 416273107 438162617 344775349 144641986 257553508 271575243 263289622 813532035 582519574 54245270 192163428 647954634 713483520 603507184 630342281 785289603 195671880 796367129 508000347 441711908 160241743 317322819 946698020 87370468 704236410 151490269 747648386 482368013 409786054 367715155 999773873 869161932 178578975 457805039 127907706 238245957 236933067 935673476 92939962 663015288 6708362 25045014 970521234 529772899 795841360 385595338 205859554 238701265 283934979 430654667 948158456 687693655 529621950 520275899 676911283 664425251 69121010 640375225 498715285 272931591 42372392 368139421 334354647 608920038 864663224 600988220 546570206 550250771 504189655 896206658 676132794 186179769 901795063 251101663 198328593 357287133 660615571 510120717 828663382 129023555 513247101 549878614 447522951 568494835 735066813 415235898 992069356 755000068 70215928 970055517 875701418 797418252 250535779 415937852 613147733 754350867 367116103 986186719 969484214 487466503 207214135 267252258 447792942 781070978 198650484 927472575 569872481 499165356 892738314 14583638 258194380 53113680 101431957 505995327 799013838 91501400 746958475 673843835 397874978 88495005 656683673 952331824 176056049 58575156 666506157 780300328 29303393 705445800 122983796 469824831 691737200 706245807 107170237 82403889 990282056 454892059 801288760 593455382 584331182 113228392 701139051 833433799 456585055 910235587 411117437 707014181 462218411 636214894 438572325 250710758 214874727 446402955 884728829 474327699 942190720 105860200 965107691 721845938 114157559 538597899 606075038 301151771 585376116 724636337 540282383 748308432 904705811 528074337 696138742 187534457 733474574 916954081 564318034 160597711 927936758 902331849 241438399 828454441 712829874 833503296 859116716 196948419 876921505 561448389 470288646 383800042 32999783 326079736 362386532 913375987 789212183 413676076 20399971 759679358 767612092 888493572 562126279 103682067 979919699 680149773 759248604 550563240 766463202 321569227 989596328 266874276 40256247 294243097 336506097 187838701 198930997 776207736 246601025 841075340 293661700 80001540 364915556 793619452 699334 783322397 296416650 328932212 514457436 322391516 205642805 250045337 452124798 299208206 856277148 829665532 318060236 617878842 125824756 463278905 212396367 153219615 374159231 634279400 43402051 987407098 460979639 519374315 235783890 22946278 120673206 450509451 801518566 522349528 293219210 448972663 501652702 384211506 939791636 866938479 444785126 414296309 632134223 442783754 591438567 332732457 799327780 416468227 553895083 418079834 736739498 779379822 959330680 393800767 919510135 908678800 262797048 403352489 875821151 531770205 845613338 319304494 689451327 700643835 827839902 750152999 8435378 856446595 239805068 480541198 956010789 729912912 876833721 471965005 301983942 820164892 16131053 17933966 281337511 616494955 518808903 139943051 208684563 310343504 31135308 834653588 547279322 887889073 24532360 295390807 315790342 223947603 773136107 642347383 139632847 571900869 415298139 42343086 167351857 685442771 855738021 37371358 354223094 728066083 555908152 153657066 561538180 519318832 783156731 772612913 227616415 753507194 962527988 655699506 75562099 741664436 375952454 248603343 424428517 117916860 197774583 335262131 661888647 368676991 912185524 277544501 828266269 359207394 247273735 439556538 757120009 477814883 481947434 930057346 855397984 39294698 11454529 818981534 232873976 36722803 319348987 657346514 432507757 167320569 477866158 478525248 327050022 56829748 557366051 130535301 178619525 53389943 454845368 957929154 906134034 173624742 135280833 926511690 695463131 812406929 764810730 415419500 582502048 431993016 157371045 665211538 422253170 946725061 104628274 16716772 659605659 184851475 677326104 331995680 938521324 294845407 466833974 816655312 649933590 904532035 686679045 975631561 251028200 628195643 533855963 682447008 283139098 25508582 944994930 786535195 18620262 146785582 658594543 136467871 9383002 398800339 676870509 635096458 486284005 984810323 757257924 470047076 387200167 35137730 677573149 515665649 883969973 639361984 657228198 826062973 270138465 710198523 437735660 347624134 100042403 991406627 319907702 190417729 28497857 66109184 226144946 577545295 3237739 631024498 165986865 819850210 472073863 290730342 610692209 580063896 25372079 174359085 668737176 603255715 921088977 797393839 205031140 72748587 207783356 315054754 157197947 551200295 797771182 681125173 899816424 430960638 420966960 697308585 354925706 665078431 397128777 921705227 281331898 304970754 592667395 375166335 331692733 410494493 154262306 848530019 272369351 39651668 219219478 809440041 542070928 108763843 536864266 938433888 895131870 562838365 944209779 276550067 255816423 415777742 699090100 882016177 750144840 322652552 807564721 925942164 448978833 794198180 258418952 960690473 163654316 700114270 276131367 861008774 179459392 321090770 200476611 479619488 261562137 450408373 433090558 788262615 456815197 136017602 381540565 273243166 385807068 61198137 196377901 53650808 743075131 112939772 450189142 183897916 543925584 345542479 818575672 997152407 267037770 973267876 283775465 679965826 555439394 172577067 198384844 851008977 105194479 570258963 837590035 840778727 989314268 975030650 262540117 415953670 115888322 92210360 71196348 939147620 253041957 968639803 752470130 163397957 762070803 361855550 864249795 727494967 704604137 538178299 188239582 426717387 563585440 498450937 404425336 661570519 897803704 879988515 565874456 863725912 370704339 995643833 81137378 380538818 690723670 335833492 792041648 405429302 139106837 528723687 304901295 254480006 813887352 72188218 561074279 876845546 237912891 697618915 285277962 418061035 851318840 319100765 546739867 194034152 886653183 848127154 914878684 74898114 731809568 487774732 28563983 423369196 925070826 437398105 761807671 427773623 307065446 355244903 527818791 492071796 732778994 213913000 722625198 923229637 964425975 558683603 708233025 773164109 961640587 263435724 490027807 685267924 681794849 133513372 658911365 228308447 849777784 545948165 983197073 689633591 97687151 62177471 210136567 467121273 498906597 551120849 876723026 442747677 741407970 286788611 351923254 930929395 631405057 260426544 847829752 712542837 363104558 410940559 882964511 369148555 360138577 831991503 198618507 847704112 884526984 763000876 199027675 143706704 433389846 859213188 377777755 725088515 794585655 134901176 453645891 868963368 520266851 371003063 306882836 442065467 813872425 864405760 307674801 510494141 912236457 409074105 46111704 982191323 487054779 376125251 994620422 193932093 682219133 531003660 749184224 103558536 872060581 100798940 103525806 543710209 759494309 204658412 521189389 283454574 106558867 677584882 393767883 458319464 126084947 92079664 917754011 551611966 660634933 634411330 748023003 884228868 167884610 671257825 783293532 107132350 215314692 144983512 245019494 233798330 566781484 266434887 123855747 210763479 118468245 672770842 745714926 53233653 862059029 216989104 169274757 342441333 848535311 683433710 101083150 546147042 894727231 403954247 744641571 510082797 524361336 326305968 344569783 234346672 154185739 218364616 151383262 453442067 986983822 356466652 136559748 829949700 36952015 497946955 27753657 128290634 936033882 944625565 989932163 185360805 698859958 992750207 808043296 613108117 453781861 797131534 819132544 972686159 634189549 107543239 784770672 470510202 793293152 933133726 499863004 831030526 231154415 17302494 184241695 910065686 809566198 637363064 587256491 25351511 190630246 224158614 743888908 935748047 607404268 395720757 423485688 983826534 430510569 366026319 655980120 504673981 399323275 518977819 251511671 678211495 46005592 4106963 428510932 145444941 807147908 738707080 566763422 574534814 324030359 93734421 978734713 903368805 75630120 326463196 117431545 399061118 894443988 87209426 829790103 172716884 38380244 245405910 776878495 689190105 802626868 382484942 731943978 403557260 804560806 597092740 498917134 605493921 677086738 613701872 449122723 341118521 244453881 752177232 612319071 710103756 912834563 823413983 298382155 312058801 969470179 421362912 765248905 439109029 392409007 512605469 971292792 401391659 33618893 80581665 188672276 559821890 365831229 23107951 789008044 226102464 446818460 903527419 530547351 355253221 451737526 111101173 530283677 251820574 843086593 73059560 594941328 652279699 289360351 274478099 670175604 229082994 430638660 444965081 868718733 270400657 993705259 120813488 108771216 479877813 19669763 990850017 62082892 393507590 529959520 261212396 711074554 907899047 344550709 224488281 753882329 128202039 226802251 302684332 939606512 771292758 145402264 309965981 432151855 278450385 109781875 210357600 109540416 975229070 270443223 837357548 581988489 85902427 308237434 28182357 89451555 262000660 962286845 868446236 800587199 256292634 135904719 72733248 888392104 42375236 937882707 467656183 118468742 3288593 917577139 702857542 176399268 480097929 426744986 115694330 178980182 796917152 771791026 582762016 73533981 80096549 480574141 778869218 579365180 722348908 278239910 546943756 630229100 293299850 931015531 439239834 979125677 404565849 632090450 250558392 481327865 812263572 499456225 98335367 895832806 499754638 566626935 263896870 447746569 600340848 998727508 648079680 767205309 455787137 342084694 393509467 889582728 488995788 716732980 321174167 209701613 920002320 905209773 802491222 680954232 538644413 261379382 455280655 571083957 295284737 704700619 89926184 638727160 597608006 538919205 209143626 416534520 609690616 613026312 705010387 111350015 148393627 96285048 323079602 271415465 367169079 877879228 8125874 710759723 365640093 190630254 6151050 200872064 115563008 306340383 728277167 842279964 706002281 422816282 380401139 958725092 47195013 401732651 730688264 137700859 487223543 79419937 850307826 711072274 614266841 751398481 706007477 589930562 211309799 681822292 712026264 887998622 896739835 977977529 344879229 26030146 908956751 956758946 89114173 182765971 990968503 782796587 965322568 759063171 125372203 587146934 606669227 126962300 303496497 270249722 28843270 825918235 370849624 104034210 982999839 714366728 979339751 374051579 796081809 51992419 131579971 263467747 498551559 387976566 372041948 892262745 571752790 474279670 809833193 350839374 757506741 614356777 385735595 383960683 746483246 982199366 219711801 912891335 541839278 259557439 527455625 117889297 891310354 576391552 847799481 170157311 390828369 926707191 534382016 923863242 364374707 541606620 932293693 563426901 590990846 819162779 236532292 235704505 585986824 919449853 112886461 864800817 205162551 899246338 555879463 904234787 361289240 862766663 159720493 937437245 126706103 169698741 804486621 140105986 458826347 849113203 32706312 744548315 989175400 34813625 32579196 542305306 588526567 645105154 340334803 832212317 559547977 766291004 833325942 633016843 822406182 844329266 832447341 174758350 318790931 736278861 335684533 98512168 834406700 283499892 208855433 296594655 234765392 965979225 772371491 161958882 356077548 485617188 677852168 717139791 66745989 4472837 776686564 478336700 70102001 717957392 200494308 559729376 376558097 811640428 255507325 926268988 738132462 953102333 344062331 56725053 337598925 377966714 25407539 896334227 394777192 958544739 679019012 622860879 861498785 894275151 982953808 113869320 688544343 408399723 645833459 462094002 342252060 848508939 371287528 148984148 773589287 321120473 702625924 708064031 52996002 359511590 341272682 893928826 685745974 957751541 609139767 415925308 199465785 909817170 425282484 290734262 452650982 804655379 169721203 885895466 123664289 955444010 59611764 573712634 701389993 646510507 783181162 209749609 753685221 166582981 203767255 966459527 778206851 315541058 837483666 50978156 685103120 981139009 482358295 313905881 439226494 469926168 638436843 533739761 491995644 598884557 576737548 767812223 142257604 985942215 75234644 291752731 950730059 593365321 888209408 778825576 71301514 765757383 41501274 87376975 457581164 881724624 351994130 473945415 19118865 555466929 52235659 883814552 5544923 105374542 236208789 263313859 734962929 828661071 652455913 473225123 916834693 979604423 37874664 376221152 762221545 744386094 114768973 229606969 419492545 108698735 858202562 374541028 614974808 908203174 89776378 118387579 452698646 980549974 870710538 141848108 514758888 800040281 521897648 286796364 556020327 65103661 532527103 273414085 146028869 58243220 472968179 15848678 565251696 479662436 470109644 125447636 291073794 301888344 662752933 202760341 369551748 411938388 274216467 494244782 96132378 571779507 717579932 249128020 595678799 285110132 262081346 79393150 855672778 470100194 450893203 15224557 111567591 107320855 669866196 923700132 158586652 367039883 372556483 835420212 861604541 818286458 85383511 200845719 191212574 241577143 542154003 387691325 188845834 504274000 576209945 43715639 503745137 524049543 658101008 96538301 251466363 354387865 703915699 406728359 678041864 908046512 758603585 956366461 964783732 540339381 166122346 772408882 789099904 680027898 353205728 246283158 620254565 798312688 218580313 504897131 291305149 394968128 157785203 310717322 828460571 509213100 389298022 301188209 175694489 835025239 746367804 513619476 212481524 959369516 272885926 345673546 388697327 825096078 506349802 918318157 502769063 68933910 599600857 842224904 52951234 858013625 985494303 371859624 120076060 880889766 42652436 279423979 720771376 141800840 341549991 921679885 15441403 810959120 302178767 394095516 591326437 361494771 588522936 514548193 655135038 134837685 545413510 136958994 596823319 608209722 815528109 226452448 382089073 325258732 813703641 847217819 758522105 934820908 77075361 436743869 612897765 309090194 564622938 516376759 993228116 348075368 457776547 829965701 242246676 938366119 145887810 245096247 579686339 618879260 363142930 470210227 483851642 799764294 507350273 735364006 311458369 120403321 396368600 245070265 644184782 319687728 165324141 64482461 817112922 565920087 661615805 923070355 823337140 690540540 996886836 268562326 984746799 393577862 916502574 973302589 917374987 102129652 853979463 480215345 296074068 402617725 59106749 699704295 809423346 1525351 629175312 551674016 145744070 812810184 126149871 978568789 73069814 363345616 907591022 407038760 995179844 104431009 696606473 277853200 348939731 730536726 43942490 91283212 485633004 427812254 374295890 535939188 689891099 899747204 749053264 943749764 126305661 369446554 285271760 371817781 52499347 453850608 943553077 993062792 500216069 528643503 57664181 590502275 314602830 846614496 613454173 18205125 536356252 349637682 268062260 887898981 3703457 862912686 751669569 477701271 788178046 875957931 624796805 68094816 388119203 733619107 294147455 268858943 945156375 484386289 981095005 823632455 414598764 692242935 473700570 450767257 356753905 214592866 490825934 600589019 46092227 209864077 721840841 167784401 296631531 545641668 835139883 981696308 426747650 881484936 861518349 494121080 88927816 366301276 375498019 459135771 95471882 377165169 382379468 154830204 135639248 623780424 954748582 670528306 962587838 382441518 414517037 588725270 1375475 223068551 962974883 378699672 598594124 171039396 714017751 209269180 535273394 193575797 586418769 612142206 718268671 84839194 538708528 397171740 800706247 401330635 401540071 952712172 162962985 685133772 553817170 844089027 433390992 739373000 412298242 395493336 644637089 130605673 83812947 847891780 640000208 548258526 833747401 85568492 237266833 915580928 292191090 993512914 970439789 906998215 26633479 813354620 403752551 973486198 345380256 68136985 505192564 434671321 571058040 289588824 607462262 420528156 438043580 896644525 359105104 47510049 222647697 390687732 481450 275250381 15382519 499022524 243971972 860048992 734577219 640618197 573139155 594415234 581092918 545683281 610481718 546882006 96521606 143942600 575834442 782409809 937151247 929153071 822797712 252361789 18632105 22721220 59916875 915142902 96269949 271628384 56155204 362249124 182880854 630636593 689210647 902937492 230692017 922185760 252197159 703877473 47980632 120292770 28053578 137189628 126307724 834324352 437977384 257780523 68118223 626937891 461969543 337219627 413253849 132382886 597244464 114645032 169059385 225190869 589514999 840929521 930519535 865697264 170564727 131792690 141465660 712399330 602830709 168390551 438094481 848877233 451138425 822077206 163059550 561506449 546285040 119902288 699872149 92730568 995920575 736496735 457465531 9487042 251829078 776502389 624773226 638287298 508592841 248430207 530972038 726495418 872675204 190490867 852829953 463567451 39916211 883748361 839780582 528938489 896359182 915658404 89114644 614858464 590108396 908859419 130388994 48128317 282682919 682692943 198537163 465684938 124629393 257941881 610334048 31526296 550332162 362816333 427986831 751784678 219224042 464223006 959462103 572951689 471279020 948570779 254974076 238162553 936239372 218394412 165880855 832012137 768384704 999005352 119199630 835511870 720270554 432764539 42312908 545408090 882045965 309100698 299129 139330923 394937249 868455196 111781820 610556986 668758549 141510054 329432382 457630574 650910774 630665678 335693978 577276853 244660107 316050534 859386749 184422059 949952943 93113886 308082544 850106758 757076899 289101458 81119627 161072228 10735835 998454561 982263312 224242384 941374800 223532430 7304135 804869935 397562664 895462464 925851437 170864729 183735018 36335079 437744584 174131738 949030780 524227057 379134616 150750609 867652706 297043804 197654110 891959135 371013278 978374578 740249234 894478125 570980456 441861015 693509569 418574735 255336024 9451725 918654262 91618039 136467730 122438525 492165623 562847819 217874906 294051627 984270245 413232694 992105790 495444827 976359495 685185260 701974092 231897341 708564561 284051668 47551747 853845069 600940205 732455568 665035990 430009161 287931720 351263099 38618308 855403474 245625139 624001358 237250423 632785979 237781411 364403106 564694284 750976663 499810924 275698085 523666074 49091986 353407275 166317683 547272742 360887055 589935742 505196419 698286625 416335337 814940759 540428816 552177667 623980482 569593062 939039204 744900831 159873554 496176926 453274173 585970910 319413519 16466274 404503186 44475543 321176944 215841196 174775021 792500731 641701478 61929939 377892500 203514349 435223878 500964526 501936825 919971734 647196477 27004235 16810265 948185209 107218011 252189595 381432639 930960743 736840223 393137342 651028818 991569085 621003172 733318701 847706356 287610072 790711673 14601260 767772889 575167778 829796422 371808453 849767565 568729297 90136219 341742925 616674509 936082168 911811054 128512903 756521001 272042821 412582815 27559307 865966085 271111679 559485928 578450075 633640383 411394977 658672863 133515148 924513641 835438703 523943860 252435644 349527315 990923360 139307524 409878399 833797590 520379496 374464024 467138884 366165154 715661579 408597430 671794151 171777506 140267870 138458178 924025682 356160190 540599994 352069604 761315274 620550372 948674712 118903166 181418277 909457531 23388016 156609010 717884054 699218262 960290682 194187785 764814833 570099248 17961143 93318432 63356339 351883377 465006926 823804780 894897827 217324664 281463800 107397996 916499763 925695936 762519899 931908575 378690535 308137284 616299572 716707222 592082645 264088841 562685523 61112652 28203851 870864891 724047529 316441795 229771880 577100240 146439516 149619868 625716337 394008551 317704091 464353438 899527763 99997394 60669611 390258568 908430545 849675570 648509501 227798875 311778226 140138004 580237456 768983956 532050502 954718457 461530144 471037905 411418403 454704249 232708754 142954434 57559438 704685687 478223936 965324654 692957829 137542803 177415432 204706963 702356971 320212220 400306508 180484274 643349506 180049492 715192532 159841365 530536988 47539769 666394531 354298875 437351858 625916686 487793763 471006041 813679631 625605432 543812007 200787190 961267199 116084569 80570832 902082511 385425551 958409921 91577092 612831648 992292996 958708768 444743765 802079858 490378779 309969857 180561048 624368322 307767448 119370421 541805247 238752744 533014530 98897637 331720040 725778470 336678481 390218182 668612274 81220002 250126659 517421622 747177362 102564767 13778749 416179439 206747205 59628571 869184433 349209107 676569954 962535885 366727858 212947764 340256762 892355670 706125958 619344007 870104205 161142445 934306404 833562530 884442174 721772178 8149947 949379617 861550231 779014342 886569893 292876342 400545851 630814539 558778035 423079508 175890773 989175757 584367176 153264973 263969905 186753834 416218788 839209890 351038790 557798903 564445485 603020562 188132643 223040967 802987054 873460697 104611250 221863130 343102802 6471181 627698703 546803272 718410372 924351648 323447890 477286615 380182640 308030780 572838632 982075160 181531031 30202088 722908870 65337962 855810479 311761777 430373732 815274784 603837780 445773039 894401834 929459146 201774864 10043511 710835081 688294063 443658068 391769868 872181558 613306942 127537182 19718084 658570642 559699954 3422107 704138309 129432579 668579669 632422898 664689131 374658774 718110359 427661099 625263991 666719240 687174183 720303656 182020252 582919357 742854009 895039663 350828290 373459145 536375266 43987869 910748879 824121267 530045539 3929205 707130414 197700166 228294760 826378646 449301591 475869051 616061824 24918275 199222425 820052069 742977220 918006267 42912831 665422297 47051712 289427199 800685614 174241945 19715154 654830145 67185698 879906792 672261798 78862752 951719910 870728532 595914253 893769980 396918447 234278626 189431931 378250174 872136219 767269532 318465048 763618477 521382228 283533709 811188698 128310923 110320284 585956184 650074686 674775336 705891741 905122943 731739865 441685550 127682814 731393436 646104720 595278538 506572769 303775124 930005220 238084540 953634128 269141264 8316146 312208877 12625449 717068910 890656026 139072050 603159618 947148652 965992966 4040342 831271297 382518207 899804137 962017212 1646171 840715110 870850418 808882095 823526809 858709996 958586225 606054572 688095103 685247521 183208427 972007160 434607082 276491339 855680561 902428012 62172280 708156813 887737174 172417487 403250648 946184553 613036789 668199599 572854111 991536751 366716148 635083513 263012361 606057596 228999773 458991473 744688967 487751184 987073030 17573188 534401583 583050857 218641486 516743863 433346492 658351036 383934277 795641318 158433046 536079126 436009486 498351350 36785797 850670210 507818775 380227698 206599211 819936974 881905351 536959967 833498308 866033813 205592352 501762904 355433263 553488546 651841247 419887795 230099518 632092639 42351099 729335936 904299569 542666770 931841852 612332644 149419374 175649878 847548425 429359295 272675043 306203284 750746159 506609454 180739678 339750132 11255248 987165585 261975149 969437636 113396637 562117239 531348495 609427361 329407722 940528061 843970777 803183066 310747081 968432014 436157951 675783671 814640017 170191058 742925909 671786422 771076136 826744546 830526538 344011064 970363395 973899685 972117533 81433868 782014305 451273160 18297768 9131518 992482192 429964150 857664827 738838106 18459703 193710449 820200991 798707648 905724305 581983949 502776059 456252499 681746096 602080245 486148334 445374925 92021922 960267957 943575880 923688154 908260393 333799784 984881379 847065428 883459017 181772121 677385045 998925419 507225272 449848128 700748463 214051984 406442470 631610020 751902654 78531998 930074935 432449188 568195167 397542479 285686254 147895392 621312824 273324150 319884613 153020424 23238709 968073005 778304137 613048199 80262723 623466229 521989246 813829339 826518909 598433681 732200563 241349963 852295912 905333275 475497430 495343121 58466220 372881795 931743907 174082634 842730555 54308454 837027207 383410697 199598391 186204188 460226419 102968762 791750841 212803759 313278425 869512414 260518211 83901926 201777926 24809631 458098829 656873573 193377851 78182194 983960261 373377169 152761684 734977222 649832865 436604099 310883734 421448353 551141832 492148624 671024226 576010755 55002479 519108382 934072692 793542634 139176950 706868710 341115719 343349711 158129765 940321502 381596254 970737058 469713861 975850246 776413263 411410029 246281913 75851365 721392627 236227846 991423555 411154705 788041351 70276108 890586065 530218398 319471355 501511189 592949248 642885337 703544623 81590323 465824417 989448718 47329058 697981784 798083079 25567917 408260366 937969966 108615467 609923285 679405606 807918442 535179507 201128553 760596886 378388766 748733288 476162034 802243939 600818785 545950074 787163821 257545859 248865178 678448499 18710513 652935399 910625342 185902044 872429105 341047842 495227903 905643281 293045583 106498444 405526800 491240008 384756281 390201844 298421777 713066863 359697482 51918689 650964961 581119131 729040551 48477095 191347107 539387913 726413961 51657159 726651918 439202718 25126707 966153435 549351604 13812095 450925092 678472564 207001573 497334015 228068968 253422053 781603636 411596968 617938272 362952531 560020589 942932200 146552760 288500539 267300651 554432953 7472832 448659743 566544244 282270482 255002099 999932694 261593804 935222352 825169298 504363447 961840618 328172517 409556979 680846608 609098242 764761982 807559418 116116423 411946447 317757083 586417011 729795268 693986179 437857428 520496591 652916020 319749688 195627864 979532232 249408882 597898029 904711680 770654389 329770897 72649861 415094606 818571302 905491548 128915437 315502454 408763058 591968023 253919986 701658534 27516591 346670667 952705479 26125127 241700813 577395793 631494689 275844233 730692330 549141232 98051304 137534794 353853615 580838414 208369146 496322642 460889237 937968722 524549743 593659624 939753464 412419129 317119420 325287887 753873665 532652094 794936717 339602478 877080461 974210038 415801533 843815122 533724596 350348396 439503107 660756407 537821522 145145985 305293663 231808169 220529904 175268596 372596136 607713334 393883510 999541080 342306457 119615850 605440749 548143278 185603785 774069473 390070543 543427829 723236273 233716852 340768244 8163121 611141543 975180122 706003725 582958189 264524995 558141100 132749942 12111679 804719120 333218641 542448351 908570711 751947743 942267733 948568812 539681514 396133558 14932945 156878377 695608558 963183286 852640552 793696522 925613051 452550426 764147701 319156618 162234761 523081048 834199096 40321846 360399735 260462775 290744472 85283083 642537933 120150329 469595633 79763859 368397397 37034780 482107310 390847372 521623831 313008113 860411072 512216605 994840318 79206847 65063262 536877925 250850125 412702194 879612966 426846462 593956576 718041312 240540334 916970084 800423114 984083779 383955440 491891809 133427014 26495881 597984129 445783974 700685219 186875325 385154244 329158329 637815059 937589111 71847718 638272453 823341300 358616440 471094953 595070440 247915385 215494592 159693584 997675557 506437618 611302385 227055591 888259423 372525424 18817802 340468932 393554607 11748698 719577873 386573226 353164468 498546018 556295598 313719154 258035728 603759849 828975358 965759419 54681677 788733864 40002950 576949044 745507130 99730681 237951574 171066696 178659710 786884941 606077946 489335727 934498978 464345514 161056096 892177140 339156511 237548917 343973925 919583911 911549383 788546083 240954169 413501064 404832652 222642842 621541780 289167566 668640910 972158057 15761684 877287408 281456459 770372169 413900369 848207339 775350662 397346120 792927074 470828383 417520370 79299693 141193415 197941701 791372634 669633690 12109732 612242912 83031462 960980395 950026542 542551981 320191232 254429579 707215415 308823169 266339800 519064929 418064233 66886534 443834052 726903020 518193404 39216064 249299644 719341767 132926171 279617614 999572591 247772871 802206263 293255517 47511010 236221661 53035531 552423953 761868994 489962047 400502009 544282596 985061110 703841453 72578721 506502431 361023554 918109371 873410321 983780150 835299864 533476646 837648964 704099126 994897226 458760691 936997835 360540470 595146737 885180413 559360772 46651374 387612949 940850648 206535521 213841825 372039080 533599439 938653931 737856915 978393789 811173054 843219484 930079116 566222101 636607579 572725104 457978984 902383546 119827052 113029947 470046169 178114940 876279455 401245185 657120424 195567243 718420408 348025215 401796802 286541002 571295850 439020261 541897124 517434924 728244287 546738415 180031734 123810617 315522377 316832330 766514969 633973364 416586556 776538507 316990534 924342044 288020665 227357462 66175950 625888831 417077539 250522559 500795699 155867637 970223884 312481202 108795021 754374658 147488490 98825156 253289176 110933593 23135437 843107439 721290486 445230699 165418162 126626889 461382973 179516394 103701702 70169417 324042576 260121889 360079270 295190474 700611899 993380498 818085345 353889231 741102942 229104509 700737215 700951012 173367304 888788072 559050792 690477292 97929406 312667230 811346236 133650552 337176952 506525473 502544458 826562304 223745046 430400597 985322901 606539981 787105787 597729221 806622824 408486358 205579832 688402137 332175463 220732641 676717770 2485372 547624147 664505157 57059946 457562525 504975528 375880110 686778443 270764416 787476839 237323963 372262149 737128695 274740485 695835850 169995828 935550593 523947080 760823698 867633772 290165840 42534718 23972150 328585596 548436618 698665 794533610 14378346 175032890 585890834 314193253 450612476 315082886 24437231 273775726 728054453 127651287 906423895 820761011 4408131 486083329 709742942 314967276 925957315 235667375 209680142 936827724 419296361 851235287 888469148 923549298 394658883 43621707 621010476 460882956 212040526 709302481 203989173 561520300 557693598 86436668 117180817 34208917 72861548 178549141 162604437 98168524 36576450 381266474 46298989 134672906 680316708 265178069 900644294 44955067 977073519 598433180 59487430 705157043 727277030 16466310 752644854 266498964 502710563 333966690 345668651 32429430 860070016 240810385 816309854 139552274 449135934 842358985 794130334 654634369 449181993 561819245 584143424 633441925 931879935 981766398 308248553 116304248 806047100 927469826 406036081 152010257 354225538 176369495 634062305 408648797 261916488 606684042 29961067 519312588 97124473 700776574 605592202 181641397 156045834 380873181 959056366 930885867 612814187 447767802 940895650 632239117 557405915 665404904 972680365 860828945 762583413 97546097 335157431 770298335 494410025 116656393 134778680 239092397 788850668 391296876 601342674 3698794 242106671 140180883 874024179 838622408 511077950 524271162 450266352 51196366 377124237 971732708 698364249 555603132 420145978 16394098 453571079 247907858 293934370 841795906 578599463 531934589 145910481 947768403 237626677 288711717 829171320 598603261 303564543 751757183 39136935 4524878 380177027 559017539 648246875 954518555 824552037 710150237 811271496 992653669 870874023 901626719 396784654 963068917 490576422 809462249 264665390 137950925 856706616 266226608 466482862 610282279 244278553 137109288 495068164 460820362 608870351 388207981 953197796 316123175 351919279 959495113 362740755 568780508 153287909 326161637 547662962 768323174 778663814 881826311 599786567 407657710 966791977 505524052 834787386 607125160 270993681 186695914 958462503 935543096 868257600 450076925 740895909 195350427 588978599 498834308 578067294 572098259 382823708 579274986 497981922 102127758 803485634 901173467 172378547 900855776 675321248 95399387 242027406 40555550 366111165 711976090 701723747 428862436 398169034 13713115 445224771 585050791 704177409 256740350 698002503 79407226 232751866 771859015 621636628 121010715 658629645 94629744 247288951 433129322 452557500 781677495 783706042 581044370 47384324 363268488 945888291 795038882 749419992 343600154 619171278 896715353 897560091 520305073 64714720 337545281 69925053 835110881 252769 775892396 838644147 674427350 25805418 374064688 747818055 505068192 767328878 942123320 745953974 66898566 2447816 153040513 757903973 966898701 363717245 854134313 976576716 558365764 846040879 49032374 513933208 934607401 993008623 298551850 405330028 89349153 937111426 522236312 592196563 271405993 341817703 436753746 989377022 310217842 88113600 117151955 91793761 183406066 32444731 548437082 888763092 559068306 547421734 601326848 773640908 955305620 659746183 128380183 480773990 785216257 282440741 781863429 371335441 757088887 251645874 441224548 647075973 288886479 796294912 822461845 19438423 524600867 964771280 544045817 862725708 51201724 143684760 439849364 549286020 355467881 132144714 597218323 311562924 326669966 875633874 973771462 888795533 820646880 620273149 521207090 604206796 551214890 282259571 821944354 437222504 174975046 136017038 552032941 110370870 798955826 172552614 740238200 958494066 161753864 170843230 847022263 217266652 682017548 289271201 552988869 687237715 601096531 365590552 73712397 595678333 831570304 215524494 433032871 339935308 325098906 616267813 368763181 178047402 18169048 291292106 793950434 701656013 671999335 956226624 761183982 992337285 530851937 62788475 882746799 939240664 77514918 994808859 896531732 266991034 784027814 867976419 801901130 429705988 843941942 2530158 685582156 560742952 866159868 970500442 570349677 735519333 711622099 254711376 961030061 543438602 918970880 847245632 618870414 576790661 211002737 255121709 802959400 105673351 379349909 499565718 453481208 161713791 16562575 295713140 985069714 474540497 839015759 502041250 141407398 480413026 115713439 723810026 455942150 195381932 988982299 536419175 451108099 279090032 334044771 316857017 334325670 935521765 388698232 34437083 293697682 748832006 886079632 383886579 363807285 690964649 807273179 333589734 657183728 623595884 440903764 923791789 993436980 1684514 741958913 975812259 284345362 848022941 957396957 995816487 514286111 133057123 61313090 27694899 864231417 488813688 442205500 312385078 794684682 253558370 779092377 35156523 498870434 628450873 463076546 849847314 985277192 769396401 665758942 745448897 86970427 480545875 214083646 245033769 510640479 842281577 129616648 309154336 794305955 983282815 725971179 978767496 292507745 64107030 923221677 63833995 227446706 390147158 580195143 272772068 81504777 845637746 861866960 441928723 357507120 314022440 981332105 681277938 523442350 327726717 577160252 957184919 995613224 856344423 857512958 526941965 210470682 688868872 382572989 798061703 653144853 772124939 110889300 111276897 5124152 158121830 797266966 10662786 60885339 146668637 711800313 51783030 979741492 860657643 963558908 887623207 146498694 744400870 339591324 144304672 103336679 656245764 978704748 524618351 418071484 904450514 184939041 11992601 334103918 696139797 391607717 222770027 868992569 815365992 162692176 944431802 641747896 641940893 989511239 596603451 190681916 128379121 986683168 538183205 642624882 65248106 794958613 987070914 773943435 134398904 225111575 147540979 188057669 921562592 485891688 416480165 346405582 136391365 885925410 448260013 235968433 921752789 121250597 592481546 616141038 946507834 375302744 384817204 446253870 14612565 824315740 239398942 750750393 320009865 552204563 477742103 277625184 962373568 358460932 752796986 859561874 816259958 188207992 513092709 70247320 927486425 379318240 387685196 605695775 914327501 567553287 48879432 506110234 510266307 677512520 483762538 407720186 39804345 175011211 320826167 272760838 476261886 353908584 468206518 274805078 84224472 782833221 927073883 378803369 304958309 246334314 242638967 734422768 401008291 190999554 471008194 251697600 264757534 67763460 59223921 429854582 380647911 110622742 614286113 115446676 4057464 445235832 754474065 265656368 414259128 419856654 436203290 975913746 150490923 280404785 96296619 191640476 444491510 612300574 610343769 839656318 324927118 756276541 671124841 283362512 534194652 449420179 366606242 125369737 241212078 642510802 86404088 591976954 873624890 662914058 259871909 188776923 549047996 345433775 751996329 917415320 186412842 859302776 477277171 287687954 615487413 980039459 197927265 684925001 410273421 237238063 903247541 703132066 42947724 657606905 619019300 35842358 215991781 333393677 345119612 904625179 409903902 727063457 506481691 468533461 604245914 691216057 809197027 960801131 9585817 899838473 173801995 863927176 406903257 918720017 333236275 398972939 757630244 421342599 826307112 193552102 265211122 659574502 707512291 812288291 339321635 362931152 436597046 601974728 514135723 781843131 310097129 431882362 236153729 163818848 340723273 321193445 941556097 98314791 95529613 909155697 141492475 469620977 101098449 870776078 234751448 7462180 583308601 873946693 444053858 434129652 273683635 102852093 251193945 560141512 795065649 977524164 983360440 97943062 782315338 873501563 976983651 83714973 836110389 458146477 580098524 772170791 143001461 861319636 781704433 563436073 299229332 321983575 512099512 834984251 690886392 333154425 141691460 526976632 811175152 441491004 171854309 237811713 399333153 880538927 939947456 154713850 946113507 369931472 314105 254757995 149689159 55426954 968612766 720797651 990074312 620723349 760666054 689060574 708147807 512030843 722978999 190208441 490600270 544919953 948584489 999781452 232721985 175727991 416755166 297309221 870330190 459449185 180324813 473588691 170772603 689720326 881673039 721176322 767523614 176834068 348440524 90252113 617804259 574268403 535455445 602352928 538176468 347969207 565509806 537403527 779043435 615196284 355211190 714434734 13611703 497213759 584568365 84291950 597664223 339622542 164872752 405291251 243328561 672563798 183593090 418267252 23484437 441749166 799464528 301176984 687868952 446792012 394120619 512446962 224018986 654328883 132866614 15369514 484497490 113363668 647551026 968145594 560903130 314008962 339292720 924196885 39244060 7900930 899139776 214380591 825375447 976160679 189936526 251042526 927498137 623932204 771966932 717262007 943718591 713151181 221181191 318839553 508428873 422336084 414245810 242862142 59134732 58376261 722133064 330046836 228841436 904318549 142281011 533368845 342658714 458043977 975850537 817309169 989946784 523739116 783422199 813259967 243776799 767978040 14371886 474539681 839145794 919154759 428844254 411708784 90451376 236193786 766878458 263674482 561751517 828311255 554262036 820909421 109197240 393581177 563402360 809340681 350442689 254132868 403525487 521329560 363939523 712916907 386737483 919183376 196162309 196116607 455498385 563851481 772999475 643017280 713475824 295335671 216848824 822011659 499753017 361657698 90719210 461102778 230487249 346325398 112386320 373384093 507416485 993770228 829274835 70649504 986049678 781867446 246645779 396900703 70785865 101993714 876680901 794152048 109535682 388339746 738454277 92355298 134243258 885737055 321641430 442037546 734430852 98649842 858535771 218600500 477640950 988561851 602040006 453442292 149196103 942469477 57269570 411882187 629237168 113390354 310979604 658053118 583539964 727072785 473340112 520137929 793219962 571980379 752068786 496648338 186661661 809189580 351915442 807669292 290927524 875834470 369656990 875118596 790754595 707899514 670415938 146602046 8907423 303464956 99914405 959409293 825952472 816172987 423551815 405213211 352736413 293620655 108392555 414436252 569259901 606569674 292109405 270896333 358608586 126193152 399444302 668952994 66032364 673734055 787804232 386544801 574222252 82639689 529359076 539245486 255788119 314909304 951612954 796827527 124407822 623596772 66119352 686587222 31468999 949593939 808906230 535420578 295732253 386891189 842594379 615536461 367562043 15238991 702776567 725973405 775283062 280079894 483673467 943038872 740856778 222137450 598063010 198729955 426941609 64317271 32807348 927139755 229371997 304549984 876025372 4034900 761920683 695868888 434004408 388687321 546563563 177621118 482179072 381661381 865550426 192387178 568350759 194806123 974605599 490893082 87468488 995805020 54475031 226023828 198438352 370853317 897131417 928795226 478167669 90979301 678561401 269236741 214922412 847734454 129222183 27826428 856479708 772981514 75654822 753889473 63663353 883079456 102378813 910254259 131678278 580166910 365309427 448288611 757442506 645141790 762923232 951206020 555029370 256406207 598790008 614650722 567962796 831179438 378628922 971959593 124045973 491798702 45737223 958169023 769964417 951617910 233456534 191311311 902088031 28271592 48011497 569809674 661817190 681544633 812746736 321321924 570546177 890348211 27411920 464753872 758483056 731457998 439827472 705803957 728870412 245851348 932595931 55410029 448883101 410711513 330616274 336526565 559659684 419937690 882674855 920138212 609490892 441772157 844781963 174023455 77798286 588381501 19312790 164070315 387808282 251653855 231410486 773937437 363761264 945720531 250091178 171354152 998841046 18516983 358750726 745155820 212467054 617161494 215611576 542416039 633092711 835477158 133474677 607449758 303917574 97608054 979377831 504770991 412298050 305606970 881151690 581615374 634071369 464870003 338524326 435663696 784884817 286689853 737563087 407216818 843019041 847190448 688344794 53405541 545753015 793706815 703491790 122132948 649485872 209967201 711874777 421171619 965984327 228671705 240516232 721620308 274634611 618072949 7713098 36156567 924368074 389413117 240919690 212333808 251843813 478129895 96981250 167154557 827843371 67022656 836495087 774857271 132870130 300906212 925653600 2695567 246202431 245837495 919850606 317314710 930549615 930239458 885173284 667678721 717440503 325871280 358199832 237913640 173954453 783129534 785636383 191541662 481436428 805060116 460951812 28359912 434277291 754264498 326468821 2775083 61852299 863593979 903705322 702460617 799775062 112305644 844294463 477904616 74840274 573922963 318060188 395821021 320007329 986292350 640724551 219753663 747966471 557259101 374916160 467259295 472626081 896699041 512484810 141345406 923328960 17273882 908119133 222527828 909426882 95298892 922674255 21743651 231935141 463877081 319335799 323343376 624376109 564687913 603242558 985871484 645778632 355589230 379651115 428874148 460862721 820894427 509837922 373190877 630325963 521035333 736485494 331348936 19725618 256575598 421071433 468803758 886991831 660702325 985522379 66584321 289012604 777863142 75604553 920433999 31360503 410699923 327177890 940486251 674843760 262658205 866727127 661077034 360749119 816497254 840339449 696086051 319338834 424652876 652548937 127059218 158413668 60139391 436963847 671099361 302380962 246942737 342117965 895967878 440994884 1620393 965893926 676994924 777991877 652796144 616239683 935530734 858252285 65534958 343213965 861185770 113163314 485412598 722808348 530790057 753650584 54101591 35842723 922253182 324383045 961620083 872666387 239235900 715981927 455919587 847150794 206410132 175262654 504698417 516183324 538644038 547276579 288505197 657518146 563428063 936073763 620817765 772783350 48951812 671058522 667035490 730351263 308771316 927889693 836800726 101236971 581770133 375806457 834115140 566355530 8047370 592751087 330949646 610625044 798405765 754189691 286650783 334569726 769023902 359397991 471312415 498635553 981806250 181826851 289336413 763273752 634250467 672354913 326817908 421153578 614692618 14436490 35220866 235099743 48938022 793927755 403412750 338181434 226134532 603430428 42608882 487952902 731276972 109627101 194267642 138574283 783595512 671133559 689876509 851380966 805592869 640725635 386903136 675453366 453653903 822637391 211883124 754515779 395354974 775061366 241206433 621891572 516402762 731824767 910812150 877723470 282414031 933102239 98476688 360721345 297281282 475811516 402263439 559166602 529682591 221605183 140324740 765814612 275546700 250651731 522431931 272566257 840612453 660196167 960192043 483519281 223157272 679006981 617191744 393860315 174265196 107593556 652244539 630845287 152824277 786791681 408637862 743194519 635711658 369222414 372671939 461434043 865171793 709229506 538453807 597887402 640345030 900558717 489039692 886234861 467766007 266115615 906416933 890216273 181157644 854770994 679873603 142289498 78080849 186467478 832220844 698475964 597755719 168950575 877300081 913512861 842004460 43649296 161862648 69773 400043291 791119971 338454159 102567532 195248073 527282159 137379613 82502692 978935624 779338981 206711036 81273759 10084150 433062747 953606812 906339183 386579307 203969003 27399133 714867499 108319169 358812499 728326226 810540760 394487021 469597771 625153359 855915568 549972398 289838960 848050295 7860759 975301868 893194651 783194696 533017884 880025233 258920093 397542406 592724792 195402158 12080271 593323400 56707949 137166048 239706048 108779072 76479212 142497543 4463896 621134422 814916697 842484163 499833462 764652786 50604130 705220682 913406439 940586012 116714155 538841512 238672969 651470847 993136911 754228108 989270853 443732490 700254752 503839760 197961675 317661297 851808666 162577921 754028413 362048362 932496140 951640862 398471049 317441265 448894105 743746404 20762807 607819721 800012125 564331455 724657454 207821656 77120331 619929568 133824237 808888461 317388481 853665250 785437651 480071434 539764302 540481853 489239411 287148416 625877318 547368340 941224112 901138354 717964962 936218478 459292577 728507351 410558804 309209717 869929414 981040694 597657395 41266201 161572488 470298660 550746392 297491655 43283227 561664980 301097837 505458689 169918607 450669984 809443483 853957202 320753352 955448257 293706891 495759359 178033725 2840933 532804123 337114393 305266870 530626652 918623883 965301859 861635162 732755301 436300357 391544863 18843371 816112172 407335387 285124656 355928200 480507854 966434109 396604793 947832821 844671851 714871156 754280508 103394622 480517643 277645788 794085706 595595814 250704176 664162888 805782872 212854290 346572253 9669967 25678222 920512785 190966608 684296751 725379310 750677202 70046158 91524042 164710431 60326191 536348857 605023154 634065001 441278597 721792883 350927599 358956651 180573940 307509656 307824490 863652454 137875648 776900056 290792015 836643435 286123295 551210456 69131788 87122789 928402735 306357491 549042783 445350918 204252736 696367527 53801247 377469100 510655175 652030968 739229554 792402535 319756476 145275852 181564742 750232516 218842236 980620069 302776190 785024513 666383182 613814840 946677384 365655727 594447881 150232841 199137998 773392592 740740856 195099194 906548613 920741293 666137032 782969835 258087878 592920773 361503285 863513954 493634454 83678920 762517247 376496063 934550066 865213859 247176501 165707744 720423947 811150062 161247694 815997665 795928000 164063384 891229742 838470269 84587414 805977190 580203410 422704132 676623917 226611207 833677307 434307380 188256366 895908110 266586880 271558927 7897843 782161586 766365900 831639033 342765960 722265271 89188986 352094703 169230601 908062735 976122717 915854523 183692840 552157428 411786987 50992442 306481777 4663479 553953351 618983396 1386723 115446989 88804679 885071719 453993814 137442695 581573224 785323148 7987324 702700435 867036976 386852657 105453112 822937320 888586496 930847663 294697000 632893027 55805131 242583076 74430985 595554219 938519939 161926493 825341482 790094021 877324575 35036757 78194786 204317937 685988989 602766741 183768553 343304529 558322123 679266324 996144810 381744204 899840402 782165632 465046887 731810486 334855486 247369732 382465333 858413374 291520261 380390572 383969143 426881430 25317587 787195892 726994851 659786646 187496138 484959739 217660185 969833085 277903805 601418458 14144060 744725884 281031444 410373295 180586018 357890047 806673569 616808655 285105306 367276894 640244477 936478130 384682354 850757932 256027448 421992347 263778393 440578214 379813726 321668931 140612632 953405706 510414652 312188701 143003758 144892540 213018478 479763436 728420962 730325243 570041857 162692602 694959449 881214114 468150969 761639506 400322901 241604751 913887377 825686002 447699005 673380128 163398814 814737247 111140352 773851150 169086613 232653267 498547008 31731538 459845912 388444163 523118739 681286633 68063338 146922632 639983767 32767098 196596990 347456599 550009061 58656125 576075743 55707900 350791498 63283593 231805955 431412741 442127624 638932963 616627238 659986920 531440458 781855376 989045449 453538783 697706854 398233218 377706906 379950031 793767173 707227892 396229420 414707916 60504555 97692794 948410182 112504776 828645237 866296999 451761840 313448443 960507396 174328536 383375418 284246973 869599595 448003858 175280639 599539445 639568095 122744872 272222306 731563609 739435889 290150167 283270315 558292058 556156623 101819817 48353202 846106924 628174056 692262291 815515419 677155793 871162153 535618465 251325699 67078905 180988128 713785562 366466526 924181320 594480110 990221008 40444238 973272931 231232628 826057466 742801588 31061296 848238263 125495959 751922426 106813884 807276226 610096422 453855477 56028963 295934368 953123075 80328743 221890081 273121813 21646527 232077424 345164944 541795113 38920588 503333617 275118962 644357124 31029952 358226191 38939905 927281562 73713217 797544098 558531047 904993364 161699213 137335198 945590404 269674673 956980836 735913144 574459826 131107782 120302254 21243514 397290901 944203442 351177289 679512951 239050273 82766227 371392474 324347210 519146748 244127827 14835820 274884730 787923425 98721329 287700458 642848156 937593903 927314276 465335516 585515960 781029846 984264502 915166087 52843107 899452659 32985252 659953833 903546803 167114193 900214689 752199311 195529779 781603797 278969044 549734078 913048744 750599274 26020732 522893614 162852459 779163946 371553493 132974305 158127016 412981546 221034331 176677261 530767087 514600012 788408623 580434316 543184294 846197462 256691934 570508441 19383582 60487253 767832602 417950184 93918374 919933501 591431752 37407483 170399744 801943245 147178556 969729923 712134430 883138435 33930672 1090522 164133367 664968875 973892326 210874367 140457154 924825954 283746647 512376466 152676373 349589727 581325369 211817770 566139866 595674684 911557104 522741300 343671678 502742169 17687183 579387759 907616765 261323504 183775122 428751384 68154691 892846252 423465832 447380672 256097585 408070700 27757809 731993549 230077150 780307832 52169560 36307084 591085962 849286452 586031937 597883857 391715692 792959092 353619695 758222160 70329695 514465226 871430679 25080672 455723635 896158499 547933301 426881959 922468216 821970256 165533882 33729424 983056929 902570115 794412272 981599668 798969088 3725471 595347280 234335686 85898261 525672212 942363339 812530303 219248035 299200683 688132660 432886304 700798872 564711982 158124063 364240717 771378759 969554370 316000529 790626086 70200159 30553893 942918187 431575159 397251091 29278324 171976273 444278494 627265101 757492231 19188020 545420274 425122885 10764660 943039498 498083743 720423918 15884760 376284010 180883019 313520489 603503098 20625488 971136550 828614596 454443100 251406569 251461016 276402552 301309962 379132527 16964011 357510259 686653028 495739209 420707489 112159452 591765572 48281947 838015769 745796680 794066248 904026550 465478200 595875010 770922633 598239687 91495729 370935535 406537433 929318214 921204803 882728520 31124893 618327375 465031785 291423034 545826709 441163427 393242786 949797541 836852416 679310493 133291763 922753554 121078659 778267076 855406041 967975798 570339419 665178256 792667244 573831006 138574004 898538751 731373518 86008427 623313643 593896936 612167284 867157823 31842177 420979995 501550570 733710163 571248843 139517635 440918394 296792458 427265535 24247941 747301794 995729616 945908779 139388411 180007373 21906823 197145277 489621496 439620143 371568748 575898510 591961633 898759480 16779876 325353677 766267681 90773210 497711946 921241887 104784438 845009838 281758111 953553033 711310339 579982636 522605873 230932931 442612504 189769349 334986160 418198833 256399600 272840989 372804450 637003912 36655482 771023207 404326190 280915109 518751770 890382183 997914610 621579292 678958668 669299744 327831492 845248652 229626047 774645719 797942950 70081142 161063323 481072809 613770639 419763451 422031083 728535994 648424849 265918156 329794145 167112138 915652115 556822515 695718584 524414558 217478957 114098229 418223187 469829552 815229035 522699326 161580386 667986639 283902909 538213509 753233910 326266993 383656076 817634087 347391145 999594533 791103124 982903929 212288162 657191766 655642076 912566025 838549746 459127098 867681392 469469446 694812657 490979621 482032325 712230053 287046153 445154482 783379308 978151329 441210936 827263270 848779257 539487778 391761222 189973702 942392305 186075407 446844518 510079566 926785435 679376524 609622030 517938465 223510701 129786482 425446918 666253257 996048495 40911190 341445950 701418605 613302413 954433734 768876993 477895823 723502567 465373406 977119429 447930578 609221310 664558955 203435382 769789665 743689058 532062761 731996928 957700591 941933749 825180796 704168191 122242662 323753332 127915787 7762436 599398308 295761387 392795739 579641026 280927917 307768617 900584453 573305051 260492044 977617444 475819684 853811695 553095884 138212098 345733724 359623950 707744158 583883944 470793896 983291849 120247734 899037926 318484290 861986812 582639446 165885202 898698758 99204133 331209739 66263538 46364402 371427165 903191498 364904590 378041545 960377412 261176327 95358390 756564624 909390243 227713651 137014787 304400066 709083427 502943410 10761826 411571805 519234787 800116081 234757337 754798860 598554159 79669629 599913540 103892846 714290959 931797786 840020971 392858493 955420339 589022277 573450690 199777256 283457560 475900961 639068087 606684775 571959445 246616594 777031071 168433413 347923468 905772495 679316254 759175497 748460863 748259195 711370432 224336624 748107174 100475056 598324155 496981297 333424549 63366282 490277338 708174890 342360466 340658780 377640591 342417976 810655283 423739898 276949592 739195412 356093984 961396890 678944273 332965336 839648147 554893894 995955694 550304472 20562898 769196960 796336205 332108155 109251277 431253734 24681555 46354830 205179534 875878536 792957841 864160096 956830475 568478301 64356236 955090590 304255167 198037593 686350249 26454426 230841106 28467864 629044506 591230991 243228342 297737052 695791238 174517383 36225002 850117041 748563905 297291129 691338541 498824603 845685875 959968660 787305088 655844382 377189037 219678192 474329801 837495373 998983235 271573240 223295660 560388864 107162511 777612945 499177531 447801941 134134032 896866985 973311814 507911509 541357487 9700260 521152505 173319514 734619425 870837433 853714758 428106692 725513782 498332479 279613116 419328751 137827239 244535149 507631688 170385659 153914043 867669959 272422411 290286382 675334172 871691125 271998295 374737968 261639097 660120216 981969899 249015452 59491857 692486428 255164176 685543976 855997101 48611058 812118311 957966286 537005591 483742175 905528980 97208237 775860803 621480702 267261893 177053684 478530350 416375253 695510258 318656767 262610690 429147553 893942938 973776209 22250113 996472333 712955339 138808455 271047237 232791575 262860948 157360212 824544125 831395237 731271984 12410205 928045412 770591225 252754002 971434560 649554256 239932492 66782570 516260119 386256828 331132527 271778792 367048635 131876113 866004420 679842446 295206227 131603069 186134475 690359680 958348440 428709027 814473856 359945550 954359975 543486918 140903368 838340085 785069273 450032504 457057684 68214319 860765794 692563765 831138418 370343653 495941789 777564975 434726540 658318468 162460598 876465526 645005117 699370614 881327997 614005143 335360592 265529319 52193617 963716199 694679143 854514719 90146376 666416310 279539863 491728549 477671193 721720679 308100849 756812195 947750550 806635078 361700798 512800303 295362034 546314826 735041012 661802206 308269979 955023151 39076347 558239121 63189993 79891991 740194029 386569782 448231923 434462625 804384883 501022395 836299853 290237757 259039343 410572687 991186556 721733008 301514638 839905540 523655688 720713721 645724749 966157701 432644421 851821001 476391463 659118409 611563948 810116456 953043919 804555232 636734866 595926571 289340127 935731807 669033900 534617782 673831488 621818768 715682962 39403385 139395295 566812621 297376383 335404954 494392230 125130982 996101198 597688494 835546979 360984777 660822268 400857692 300453338 168076852 234734370 185658974 261943765 10290679 147461267 237764448 253725100 886091637 615927359 168688793 456695528 607648333 285683133 257637252 37858535 244181061 471498500 961206469 452606960 178679911 672137016 262377991 898546268 406741610 744272906 746457338 39259971 673750810 988438932 670031211 971828846 625254629 648965037 103676328 264133096 368288533 758332828 785578795 111932598 738838503 955984407 802234973 254534465 149000880 717523071 306631081 613450531 670723192 40325613 362244770 322813656 708692352 189812413 254253908 332253343 330221837 39071571 933047861 877902091 9241006 134888274 779554995 470338783 481227253 204020463 502492990 726120359 914519124 239939786 159599950 997230575 871234954 347027169 243130787 554652288 552654251 209440579 232419473 411073927 567065041 79613344 24263488 339203310 442864042 183856793 453036510 897993521 357337704 766993621 672227639 857325747 780807192 614062735 743382942 568209102 330552069 202616218 74079352 978742083 336334588 754714760 850928786 721191000 623677151 974755917 87665244 307049375 592191587 879751566 400442493 876389494 12148885 472718218 593114708 906213092 983233026 986467031 287788397 627454579 782015836 192882757 800748880 246683940 314995379 765888798 835879903 783355603 941751602 987413113 494544115 415822905 376244760 280130815 504523584 529725313 248865272 926011882 723350156 737658872 338429789 375465905 549265770 899007286 781277133 851759250 326976892 170503736 648407385 15329073 642387507 177297415 960048296 452740010 358856534 926522041 62485334 870414011 248735697 272883952 873808818 125204200 494892380 189406687 571001747 321560479 387858572 998013236 731088490 443561373 288466612 634812524 186644590 918836832 948994963 269188334 600230348 323810516 451458299 269208303 919315634 896660435 640945973 986390673 525928617 15906052 876917014 46457908 130687827 594643598 590070471 366499763 605162780 450676856 527987343 165675388 348763588 853833160 696448662 172891307 754490604 155332058 64945366 442755781 789417933 8307801 498715633 381623359 551585934 684088939 335551598 653860383 382370626 513582271 702012848 211546589 886352332 287348396 98659916 796264726 104875829 497333139 493325987 694542133 659225899 685161803 998759636 811346765 362698047 108085895 974726029 852235031 10150893 914248689 829191579 728474008 843332075 462464341 579467666 778463138 388779202 809002902 272646664 466944284 693234487 231466301 520851095 615371341 269623969 982256623 585830584 411025157 956378511 263269100 778958152 416265126 922024488 496191664 102164421 76974998 821628657 91791508 463876186 87434573 18034231 291276570 207536409 620406388 193408209 159624148 236289709 690197213 399126806 521940683 154740563 672786080 453224517 583016048 226118105 505282320 764822544 345503431 572545549 429012779 687648194 970729213 123882184 685006012 907499243 961828872 284665338 472567500 727530783 889930974 710920740 55698802 644667018 759659313 833061714 966646414 339845533 430439150 826661218 762225743 587649247 914338977 229232069 843156261 682066512 742480515 13466917 400724261 321772128 327460573 326953551 65948582 231697452 262493772 222489558 277934663 625404026 909776954 910234674 146169732 854508204 866780926 336835496 971679424 714566873 500377496 245896274 334897429 98424348 154961915 70792253 426785565 148277217 515387347 837500766 403729382 711715111 623029700 376623485 722787211 108652883 254138598 609009019 477268204 247321372 965119003 847892793 182288190 412229226 808182939 971121254 570550247 347081694 278025537 304358545 603334897 378841366 759596956 28274233 498047825 597896920 516133274 172541508 362247814 549240478 261379331 980182737 377306276 393633096 854815021 179785784 363788182 874692603 71020712 341148379 150982990 58377360 59696291 836596462 277911989 649942437 969924090 200549083 598518445 934869638 763127640 442271285 477338568 30457416 495355275 761531465 934643516 414916211 368822203 266511287 16564049 685496331 542000208 359709240 898721311 656560851 562400379 783875118 651842589 622290681 502826184 70195117 200375 765795681 138027527 131191619 610123337 361396147 591222710 858339445 413154915 560511703 287059003 742853987 524015226 136044268 801597355 602041327 972217745 562345667 515236777 115115605 877669409 566606462 623604361 913073053 229056749 888799890 774631689 217976771 602607849 151573686 446795969 124207569 620945129 975214592 272323254 743286137 790524928 804391629 961723681 10240590 23308656 188350012 185567022 611770116 17239848 640074632 778948139 698402276 960168377 48797334 177630624 283180370 515559199 517918415 40195009 239796236 767429834 179032725 297505741 739360445 58129059 742269724 85033764 379823799 240673778 336518860 384600190 689508355 950857979 336293765 363049468 791153988 340841625 1486306 535467505 947463971 27992539 863534858 393270591 373197043 914133426 431780047 296654799 146786556 385149640 91736006 835959212 870239038 500852628 410590623 203311671 472749431 396705657 690600191 450813417 39570149 467289951 553995463 232735197 799426038 286502631 886174487 191794832 80900399 49142222 808393218 199044850 744712454 837106619 223204903 788743374 168337203 679919891 44726650 818758225 805599708 801498705 905222019 911586090 162634626 691021603 685256066 929729635 815444206 924461898 781049483 715257067 903467777 209136681 279262165 564012422 964796840 185118631 113993748 291322868 442893152 963130962 341991938 56195440 694038142 848947570 608854869 6817411 12015735 495989794 269726706 553928704 493587583 414852288 452033034 521740413 645023768 869254372 416995342 63528807 606778421 306151338 342815278 400385593 697764846 836766954 218576225 874739878 901825069 659362226 526510374 374537406 308196192 655141482 584770525 827818323 948139593 876120199 325611591 575469986 182868856 704127630 907038320 802834046 491431677 656624896 360761009 965352019 169846380 70628271 188484675 974900118 342837887 196900862 639643712 654606691 263110529 986947308 140041360 223553466 365284797 450688710 314363612 846073522 392017352 439396672 655605126 277196299 657127402 880135375 75504183 153084950 400098571 519816014 213646341 21663657 470151873 148614753 494618279 71498534 705149012 995409175 908026541 26842132 896361779 242708613 697866682 751168365 771063976 576019562 72064679 882311867 971336777 492127650 373949253 148125208 378371161 848216227 200493488 845706674 880924991 488526810 5300876 512408747 334516598 237808529 298008613 356478858 56011198 907190477 334965578 130742900 823972562 483513169 721662257 98087124 900487581 421209350 313008650 965253501 851809878 94516330 296749003 962731573 780077954 22247741 465185919 405023071 216293382 292621261 915109335 506279288 464203480 497221197 365063914 812014310 33428021 433923914 56261341 500271652 293084658 453792527 669539548 310010939 968766886 628317490 178985495 440263226 338040141 748450324 888315229 8575009 475161746 311146679 50798457 426420870 693655607 824105092 708453118 344143042 787225156 514504987 463042966 681510181 249278582 535866580 519042464 698003221 73822617 469559453 682470634 28224277 850984881 601272278 491709171 912330852 147117595 415167166 766467813 273351463 624625710 379371076 7619851 949124700 357404797 187257779 759425582 145933336 111006493 219247814 138872914 772438827 845758568 924811351 884493044 380317814 490985940 416510284 480659335 149854653 49155478 513989727 791278027 648602184 33644579 767850877 288284015 130064544 996995235 359906876 648946019 401816108 818986624 969024586 443014370 617642004 35616394 123355883 67319568 961275473 399953868 460869324 332099455 978096482 797601970 601953945 744434023 302126564 102246401 842225740 268833183 201891266 582204242 395649232 664869153 566006483 39180612 313571688 318742783 796190266 447107998 922798514 661254658 575536360 19774330 717902595 971645000 727904210 899934376 442710870 393207916 107250142 148353171 860421793 971312884 53439698 679506258 55421072 864711493 978621756 759812575 515860817 874006172 118445335 141274806 249918627 872261039 534202968 871662291 548663898 496181707 997774618 146550790 47918726 436592284 368372880 132380648 136711645 391628765 779147668 452518681 69973048 980612701 254827821 170381742 962001619 283508015 948226188 103195260 264402842 934601168 388338500 90248645 198092095 591610120 519326851 706017443 125595499 375007035 523507337 202149527 225717955 422116869 454552064 629989438 422296546 570565797 315179552 629901348 258754519 727471214 67508000 319258035 23733767 562327013 219317168 970210942 778543927 776769082 630100716 705845002 611818130 88800345 301609118 847102941 521544822 66784134 792764442 578045466 27445982 370474042 897494933 122278186 51804028 326679140 73414030 292811774 453791888 870374839 725460101 36977763 613331483 4021681 800367221 134482545 692207717 917991917 54427183 358655477 586911837 762663731 400834548 289904047 350695385 793332407 448207323 276370029 187419345 647915409 836073746 328618713 505831100 404769825 293840040 173218785 839734108 551236693 965993059 95205022 36453503 960796049 9414930 636627015 329647634 119512472 210862951 517405066 19154057 584998306 673989440 993777581 549953424 387926652 423692729 767758907 135979766 722082872 785089784 596145960 497352624 206192455 63706063 966594854 949978417 794722858 558910323 164807284 229223677 801881523 478761939 209306868 775620180 847168083 337703414 624255302 86050239 382977620 676716540 960172608 456215540 280891472 248438911 444945593 155877216 691282439 582272587 158772662 211012603 625030575 614526205 431930172 667958591 740531283 507663347 300565009 656997582 19205098 105536781 221611625 819811186 167020859 287747925 327111225 676161263 537718058 8796306 776794102 465533364 434899146 586211952 880682644 687059963 2602271 766350762 867894346 324630607 203659333 45850844 600048246 681530178 208768856 941770277 244632923 932270306 234145585 462431335 947192654 946249510 448858544 120274921 24419408 30942026 142965512 547616151 422797372 624553145 991156569 983519979 360810777 35290728 621572596 376733501 236250665 218411472 744293771 220589746 363243055 752694737 155027163 905266326 812844232 359377539 24222850 596560139 989577575 62549019 26256369 609311159 29391621 593383012 948759155 893527429 63197223 759733086 872173166 999398231 239246861 855666563 920306482 27922167 250890273 391905038 29299947 915547054 181330580 640246656 801571683 787012603 596276676 375712367 350532233 61703773 487643605 758732070 376963161 483787344 967252646 665458353 323700179 110859337 947831366 4635586 241337190 364179774 864371601 414613444 458282064 490701865 361402042 222689909 118479677 121110882 994409632 800069332 853853341 734113107 537942443 180188767 154001620 851643800 334161777 348414772 618505317 733542485 44909378 883133591 828050632 87218880 350186615 267980652 781948484 847579266 519772903 146207953 160275763 930111544 473576033 123496305 812167700 85557058 773323682 811904753 171447079 730026982 615488096 982783154 459774515 835378116 939995253 539018111 732126734 245748675 563953556 300713941 683772898 93514031 329360969 825754847 970332346 296401452 307222077 853227324 144682355 279063824 674015320 572931888 39936214 490611580 400472979 595042500 168020503 573054876 962044096 327735645 327898765 269485749 519141340 10299965 203212833 71703835 699296732 737885624 877962650 62694451 335318138 164543672 433332909 830069573 924670667 441270033 941957692 28457353 672751802 244404107 463873103 656928265 236165894 799849606 317904051 147823545 845618754 207523081 144192899 905157484 475866209 97040513 186778964 790051774 2738951 344773948 369417274 356218434 675783622 378727680 539820131 214271369 159557860 141029359 925432212 910423336 903870463 849047091 991060679 628840730 778031426 723816666 639484391 288269740 801299365 939282500 732618505 416692791 63947012 717024121 578904888 422611113 218109319 715890343 467762196 847534174 882027452 190364087 105595319 202532185 422685379 2987516 280523710 87734226 274834872 603213199 515772844 331039988 644102939 516063533 137484343 635087748 652770321 415634431 297268330 514932912 160746671 435526554 931550218 67422972 264327632 139597744 485813121 214380776 218253888 41064149 564161756 640995908 603505129 131976235 68920968 528672108 211218442 750029903 891169041 16634078 575908574 622267881 369359792 10519923 889651024 981596190 722758737 397613102 309640970 820658367 904906941 997338789 453090188 32444405 545958512 539398255 810318343 208124444 994662867 767727962 644144926 222880303 868335835 989077951 595337725 536028358 449922772 828737416 253493241 364543083 590470304 956692287 558977309 151446336 293224030 146529157 869874734 603298598 535085111 426877314 861326511 887509468 265851674 520069886 854167858 579654806 366579613 981554905 460688053 347913526 374642364 70761623 994887519 854052222 767598360 451596401 320294728 839043379 227765791 441251625 228058241 837902071 27540528 604155338 222518141 930505935 563605370 939580649 57198959 91052760 23937732 1005852 926126063 80783830 746701857 306251196 194651545 877644622 246806108 670028224 595433386 83900513 678369243 302087469 491201043 847344633 252454910 826398667 351762549 915272680 63048574 784956353 924960358 633181419 814939415 930662443 419011920 311675255 680519608 138011136 508493533 329061961 694277584 416424819 663860192 483749097 920236702 189293626 608022122 272232908 701167392 448066659 337857535 68265618 725128812 409386710 75562621 857341327 360280601 310154324 973772970 369617458 34921971 178135449 390230907 574960124 286171200 862356063 95236187 846248652 358384722 156863983 708079293 524173855 833105132 447515416 607717469 242141730 249914575 319662796 175617540 187192949 672935598 654325494 751672122 984225024 289696813 289804968 39740355 546420975 95260502 210247249 929324179 433287262 49646785 853543308 100374330 180518135 713349983 705173976 754808646 284763571 857385886 827803329 938690244 604327296 176220588 262310897 385515813 799175857 697485885 160639768 950436394 678346767 896198062 637489706 610390757 269198612 902448036 129054757 114351871 5441485 661776646 579016709 116158383 111852212 153015062 924038420 817760659 939735405 442443610 828360408 489013110 546448867 506304770 456364995 758061000 578381278 966429260 919052702 404409745 426003777 437464676 905443594 481868510 252591715 779479558 841148157 712467118 811721436 99743046 337835125 813118411 479364624 555986868 894746829 627371274 242081228 873272684 890105577 627114609 350302882 212329871 581660562 502675061 911660097 84170002 149121796 234821235 659011962 756210778 450063867 758138946 269024831 484647805 79870740 208757005 116394135 180120486 235463483 814462780 684235608 84739902 362118047 992024766 139359778 889340906 677066982 751869141 137889955 766505883 179766521 197302409 766654156 740835456 149322817 889324028 919012914 733611252 126884069 781758274 40143892 188311324 998444731 729683867 695259229 774726747 61773773 131587063 257761683 619963833 356951006 560182442 199023150 498707666 524990155 726970936 543346493 102337445 809537738 407520904 41476317 887333004 634447349 758551799 435861438 927572925 96059261 132488408 804148634 21705000 2558454 495768111 48380741 428568689 139202835 876215120 639112646 827643335 591926519 811217478 93510188 832967866 638236027 568329182 406571655 572629425 596890785 625264196 550608431 63277413 203897482 590075317 809545156 156651641 501857407 913057324 209913966 538586232 81382507 561635660 508841341 775662677 57885376 652121643 868640742 359025776 842738792 237707867 407169835 519854122 334771151 302503793 981862623 417869570 158794282 173519969 391499101 391808375 877734862 623584619 177731618 507462641 161155513 129321195 50875885 470197155 693628365 490643654 228810939 92952839 856011894 896298281 871878899 992200735 879974299 739796202 116692720 494244473 366574084 328611585 796231994 342518332 806249 732288958 970596440 645074214 811054971 574345553 480937668 660954969 131783628 160717847 770195664 639903921 913423311 460868769 426902258 458983146 283906047 244237244 271152649 405759354 303505607 481745742 283413421 140259 184579442 644113530 48555159 467468424 226653752 263329174 825337679 56787658 331668075 149177320 455380591 480727780 515789906 556123301 297004687 423313712 43401777 392169350 497649138 236906748 867289381 159634752 627187605 788508692 484792701 923392837 496758320 456739332 307378500 770250184 240426993 755266479 706888871 249029404 60064477 324667314 760637277 542243460 220485304 141301925 961359897 357411572 414316925 358448067 41621110 640078072 446783842 473207221 283058033 742689148 415426376 324866063 446393544 105271809 701081113 519652265 484811941 831935783 210017727 690893091 415020153 312603911 808725908 183575938 180381991 379353521 872705348 617413312 788897563 682496573 964850198 797507897 932970245 834530954 801588784 246708132 925664875 418218245 608612856 219733141 364709314 812383960 282641795 874313527 2723414 811387943 720580878 431805303 468505909 906152323 850807103 737430884 594765238 389871610 761478760 54593132 995795648 624458602 620945587 132009162 883056600 986678637 813581677 76133348 928789847 158745296 678502576 887387850 477398539 297544260 252577714 838251160 336123061 955765667 772789299 997278533 90650062 525088495 471086667 653362244 838994919 424806999 846392368 973273196 555824755 562231169 76128720 600878301 742147175 22540236 331970748 574509478 257682365 164778052 214806175 580501481 191639641 245307584 327367288 85736030 297008000 231674332 626261809 48349081 988132436 812685908 401299745 670324169 459632329 932611042 285253826 799891875 503913594 840888609 390798636 459658281 795200928 940460570 33403787 618715598 477482746 34301680 204580978 10688772 850831481 415183201 830783269 584720675 894384880 1861132 814786631 967951821 825647286 207352798 799811266 999645504 136364463 13683593 467521595 310883612 594674588 82784060 400721201 844634487 707150774 995759555 949977616 135958463 506497010 969769881 18791763 544515477 65754755 290643169 183336701 581322546 870160077 704910994 687779012 503545772 662160135 613069627 395427352 465822354 116135086 40353683 456806037 986125801 774660095 749006444 327066794 459180355 131730471 609039207 137874826 675515359 19645092 45565703 189838786 141340124 714625588 17437460 381438008 232314532 219973245 824844588 489638254 118563594 803800024 753697630 48107756 805510160 548267542 294456053 631635460 867353326 211160191 596677366 756963797 664574130 10634619 81235184 208750241 706855035 885489080 295399121 691462877 610865119 613527263 443389552 803079701 548237723 348948891 337277033 463048833 849083596 521112753 738725354 812408566 214203960 64686376 358532946 890111069 619661387 539011191 957135277 101415851 643362394 527362607 835902685 638924527 608670147 323613384 909840843 918672932 585439075 751310906 519896968 275741533 694256561 287991828 35980275 769056721 656192142 914218443 354026043 604510887 623527615 290217419 682597023 80891477 595963209 50777191 40779953 855619215 107073228 436793384 661966377 957365228 797226618 174543408 778013583 23335779 463017764 881329791 746678081 302542325 228961931 568477213 411631188 497205179 22440699 864207586 334659892 371147438 765651774 842937773 162647690 830293024 814715533 130987044 54005132 690276952 705229927 338762600 331182154 513991980 291574891 426072287 296592457 414822307 219941197 982052316 766336362 320757453 984167559 11742343 626799171 884875660 480274876 615489227 833808410 530550377 56186161 697194644 85073578 830986117 486908674 682204059 229591773 122862908 695407268 331251845 199466930 494042573 652588394 718992652 297739707 44236012 541031485 303889757 952500105 978715943 702828762 836063473 39892828 170454272 486470313 866801773 346773235 790333923 246099708 442503298 975294843 226509341 231431181 706759976 70217290 668881764 668628117 689805309 521857551 298310141 990091510 24889463 738561199 236412515 35580405 55702965 440763248 295838005 275573738 101433191 293166730 137052136 322651172 935866117 70211310 497276344 787697764 984449602 96041640 137802872 402465140 83228854 646914299 362916481 664050306 739309835 81077285 31916627 165565973 201178926 356983231 755126369 594782355 697539737 36639890 506287518 189730499 782078262 921392981 90808758 574322091 96352786 142256216 833312866 158272656 395406120 102424227 63621433 961305624 700742621 444367733 730426 761482630 62606107 218929770 583385004 889918356 510113955 736177608 30894638 689612023 408042221 473878255 32430934 218828855 240037885 798694938 530372766 403908830 362871517 284142557 665038658 270474177 987101263 558458992 767298296 882698924 744017738 150851400 881175819 412156191 284837922 398920580 806038140 383598426 657746894 31581931 664560589 395532126 22559538 301591100 587123058 579240141 644610398 600486355 604740565 949111573 915706996 435064843 213826958 71328368 143276259 214182211 968912617 428598761 779653893 800138936 324437839 262755828 739601429 307557569 634245032 726240805 908471301 181595175 946486559 732905911 609915586 691348226 836586347 319143242 577176015 884835982 902060262 936020777 211819835 507642870 334888293 344076919 368823304 682188057 183006641 638736780 653992533 289359391 95730491 948863223 573867296 235365077 842840494 425071933 576664212 403906349 719371503 294745210 842740545 852417098 385559076 213037947 250974975 977478652 888810970 114652846 498061836 393476554 158252587 652561858 883875776 136610816 322703499 646449542 353427513 669211554 737801322 810779845 295565669 437346328 209558600 161568564 447569823 581779242 110024 164848287 776083215 55164678 153436256 592292219 299017520 144335226 806553430 786788067 707302953 155295787 670417383 825567457 417718120 987243556 776066904 214711166 674723477 282944010 670612055 421184788 534229963 667503562 97417753 225521774 526805229 764931439 679274813 408145209 955700064 622063947 11707856 950662114 51951082 448100483 105752934 711232069 134832595 699934918 171319083 774636483 637796928 519333743 370232729 390178169 848685395 901995004 129374866 222355793 470431622 178526775 566152926 32049116 257492789 373883007 584723721 501874287 835437581 639723839 31750819 418555521 850287961 890356389 323208332 486286094 325393167 136056555 51174593 411036702 203451750 418462940 755219304 446281151 878685176 206679643 408223231 375963640 348866181 252353433 264589040 759475385 569273677 53970122 55471997 250655920 812562128 68606429 744051442 585627259 760703522 935482451 956703033 287328526 118436532 521744785 376011649 234454643 374158783 932352673 751410694 922313726 811948783 17547719 3638932 625312174 90226156 710438159 349725584 551729278 110349333 950011081 737648944 409292552 833114980 73066550 155615738 641459982 349228566 667189160 542257469 105789260 649782017 598477365 225473534 736722077 991345179 690285321 480948546 53297551 131336595 654832023 264854498 467695471 789980055 221427365 745103864 766713208 313422753 388046950 674312304 410395909 147993398 926422235 281648823 10787482 151058443 546503427 543686074 369634331 43462407 53413381 109508827 718573823 373920694 977177910 97961889 685050094 996747990 678626645 537423990 29839670 890567230 843405146 186998151 704506111 902078637 542384172 685049207 512180634 866501844 668361816 635536615 482471491 239837141 193554290 481296306 377697090 114981182 521972412 1042047 562742261 282492317 474605441 255385097 926801174 346998765 197242395 49644667 98066387 380504509 879156640 846596913 41588600 222448155 850386367 327986625 302598470 452536044 990047613 322314710 706571666 787995277 491458583 681041559 292198261 911119126 43829227 190208117 547747524 953926237 302193998 655077771 689102709 973791943 747678725 211945406 585118609 742889593 357024070 251859001 900128155 99726124 104990858 330059751 375417216 248950879 96043663 586915203 239708801 634155036 386621733 602809212 103624831 813104758 454120691 854127498 148810680 42805859 389739132 314873781 956197469 653018657 860544504 359912851 367771995 226882799 530613541 665590033 301280053 743562752 211491410 524390513 796896311 642867067 529321366 898278970 108891386 381830644 622873721 292271269 418533463 750910986 107907012 812386432 710817281 814926389 150319443 70612581 134686783 861652074 209925102 306306294 308200881 907477699 438915082 155051446 623187455 818502153 453052814 163634513 660504754 461857857 997738906 35383444 479244280 518022627 584719990 17382041 854125915 371017764 27811494 174827214 436700181 361139103 752138534 57512796 214409570 173259027 590800357 442063051 450749170 557624753 78509647 991826724 477036946 628098330 279339059 300757427 723934496 534557102 647810556 271447058 927507827 948181205 610082428 244166829 525511592 946414060 889793191 426276814 61076868 42566700 739958897 74176891 167373586 144047763 296420806 133887276 455519911 89127887 607490721 297573437 93264847 910111971 970161156 705546737 759449604 583379018 672692531 390431634 477939023 768640700 567338589 814432602 679778586 155415984 467179846 443419121 334145591 894951234 994846777 617726624 69512637 802468365 53570170 339251123 758254132 930280000 522197268 798449405 983460715 165448213 521223689 439918785 372312353 654371389 238632076 753934085 754434269 194639724 197125620 238930878 731663807 624122282 246462703 216895537 570367893 432125 847401531 829679333 845245545 836690775 620222768 574421071 409157344 661517828 57650277 647238990 802988276 211254169 581340429 861402242 431618400 125739888 299773882 828764338 864323417 32401598 202550723 871997227 322808222 75568470 509201779 844820072 543504452 461818538 88171636 677428213 371778333 38314001 211231866 12960781 343435957 246450717 801563301 787532935 490225654 926114988 323354310 290785595 895664807 429339972 521144296 222491983 271251520 962650594 972856041 159667187 558329142 519052383 167533194 809531112 981561372 709291282 617504258 630115080 105171478 787480070 619384514 399640997 9773417 249830275 489533931 727294315 208346698 225883874 973859809 424955700 312932613 977100638 846829562 70908016 748096586 164109504 903154560 440222650 644446075 153383410 184614360 184815240 779739375 65128614 122316091 158025554 484949356 806872897 152711631 837113938 956073811 270713344 118331569 480703268 598876749 315987167 210559769 648903582 748827180 329590992 897745469 238657674 494813079 933341315 961961852 596735386 464038632 144043449 953859523 514692296 579596018 710744767 533860150 411531223 299588492 756311119 520861509 740521910 621105165 778553570 329223466 138684703 443507689 814088889 719557406 156572156 427351933 975939114 467952657 432903964 382662152 640849426 684835522 804436802 284806916 646055715 332729671 947538888 241296540 690061014 401246445 504286384 378532036 723414652 927915428 223658062 421027981 704184346 18518801 99592450 752866254 594509320 64642306 902941945 121233072 302936773 671944135 375440790 622358098 743464741 542810530 599244530 136864142 873659406 223299462 591821129 247265231 734903715 960862861 811486647 688989577 534609605 920996805 297674370 220230725 883076976 959924861 547460867 9351618 766108408 402824012 184599583 944306824 736041172 170761256 518170171 232421720 381033577 678668878 361742589 551783233 913716752 744798260 552894029 556876633 332788826 801016780 969156861 368374952 536004995 537593672 647912507 671412640 974778915 986936810 603522765 411226350 12585670 880476281 375127241 549000637 875076325 129381040 316898607 599856457 909577668 296657739 856174808 698509157 157786176 515078033 612626621 220805440 164768681 428475184 820266670 439273586 252665237 16747486 486203707 682287652 284614962 587388445 787029536 875416020 825026961 499018787 963215924 404348924 952795040 2398067 839390052 530170207 837283116 896792557 823559321 448896573 978935029 666148764 285702681 722973904 269109822 87621830 673940492 974630893 664589869 710220561 967244271 537739607 801079321 167379843 318235988 467667886 486726846 865641449 200141568 596165439 965842973 306366771 327783288 903412861 140295615 918290166 460651893 464116877 987854750 740808832 365537641 939396394 152059189 312337145 307559515 175184242 136965157 126587933 363416786 416030984 354807796 47203160 112246384 635423900 632672627 107946353 311343763 855596425 158828162 830785942 733601622 908863659 845119018 306844746 243508641 169094847 773559760 643552959 194184517 664067302 877037515 209378491 504604049 685487501 349266321 382683775 172431317 903889214 499560583 75436783 347118437 209982851 293746900 16678950 148438162 770983120 615971805 978767420 335429879 35213690 856006196 389713032 180542505 922113923 812328237 473709448 637104678 615450687 23626356 651481990 892547559 642123841 917001695 618551440 952539997 583581358 80439592 11339204 963494654 147660855 884564305 924310245 55726747 909919039 928998485 113341095 292796909 765927193 418072806 906692623 296919100 195853758 96357570 60174614 420670391 371859407 393724126 327912610 246503972 537893451 14680498 823113769 894059043 465578557 241057435 273874659 648655083 92064317 491841500 207837002 631663700 176673265 438347679 733690477 108886960 464755190 969724178 541990058 563066019 947420000 28917793 571732311 582678297 830957570 574386535 327942934 442360740 487051264 523695368 984055931 391275234 238966129 829859799 277203366 493808500 97732909 576530888 358370125 950998328 282662539 210109139 790708356 931165460 996909970 591562026 419711808 348301339 2743667 613873207 156023529 864126896 656695968 586375238 816078867 686135654 546442201 701890459 724367652 150113883 473452512 219858346 514524142 987413369 321016634 339293207 184547283 350240342 896428572 828607288 106027286 841481101 626180128 914345589 344001872 151334808 808439699 449689965 342516899 469095127 372994052 830657034 888356257 725160833 146937023 818728287 464525903 822652697 113180407 560758051 516711026 433053837 823289223 676894982 211733126 340780562 310489003 743388986 557077851 598930070 591523542 261330798 281485731 315468477 187600637 98032755 671841254 461206039 434199804 511694099 619124742 893137683 1036695 222983031 550219474 780500347 964231765 898220341 375130015 772147023 771937766 761165689 785107825 844337930 164611680 354661324 628886155 319717922 105233491 598031415 265417170 524266366 453488571 291684893 801016630 904551391 692019819 420015620 840178406 192400605 76607471 109020785 127855623 658882446 750234580 937174255 159096074 191013490 930162976 910871351 615972110 57603102 13524626 151783855 837613655 876973553 278795332 434557181 285817187 245026996 52093341 664727180 602021072 824105681 491255266 41892 966417206 12763134 263118159 719806136 684765942 666814046 757877511 178103546 158201328 436781547 227601011 929923766 792889425 832545329 578398407 335475049 581117013 455394504 519611937 592578950 578555525 223946665 375576231 256427540 162639022 821471420 147681628 782887176 550520104 671819610 883728530 612479385 676331946 144893568 352632005 409174328 214188925 396382755 282139906 125063777 62014631 588247500 371490118 758907361 309478708 427082102 139846523 159583024 919014636 38666015 493892717 799958068 491920245 476972973 540536186 295440102 242182082 527141037 690561087 349901137 637414097 835883412 97511137 8916244 570369341 760832938 340077414 482507264 349883538 527116667 929587722 453873530 544603977 826060403 317955899 865257910 281844125 562001203 911397785 940992945 728310599 388627646 529009167 141182074 102864807 910984095 780467046 110591297 67846821 843433789 832491247 22728741 565439941 630583335 378287132 73313949 84762295 872936400 347495006 204249510 982838411 223983772 170708938 982608921 863633102 574382748 817003462 847903560 116984921 928783114 60876709 958966397 169773571 827682644 480865369 346750549 233578394 841548082 966499029 475389233 645276699 831592131 601975798 808459393 987663658 506428568 401943567 538941682 471966777 175992601 500239399 933401230 58040876 434840622 135936343 824482378 62484791 61521445 408287532 868561260 32934445 809870023 123008778 789316269 408283244 641993423 604734832 16227789 440814006 869873186 568583221 461461585 547747904 388777068 199058856 58738964 907168870 220450514 683801364 988264459 497171153 77712397 770096251 203559157 387925644 472733343 405627947 144257513 898251039 718170908 799580942 369687605 627403121 844864943 543444 552593862 887969674 661570503 344092711 725851418 314595239 659590928 41539760 885544542 557261314 509238665 275087720 957215640 549256838 911235281 234062634 855538246 583183440 710704853 217936378 136820744 190810781 752689787 545080172 812875874 993113202 70371287 205068372 75384417 234772082 238698243 875113371 994752521 826930721 346946810 449210063 363246976 402171358 297011161 853131437 708305142 145031108 815590984 833106265 127680286 796529824 216874982 283239448 452119268 620160903 215296528 250759690 391273290 843297171 733537724 264216865 643130421 614410441 160665671 634931538 289806103 94076161 440145083 503812063 112751678 911738688 604434203 761901557 438668276 8467253 916826753 89016431 864381944 159452846 940438552 541102299 596958449 744981838 635568595 133504380 43997034 326255437 519917489 113679017 574639457 972949849 295496811 82641162 240556194 316885011 656308509 625653243 792621317 555236850 165365450 810217182 301066080 895594408 539419387 161081562 632634596 513437489 635755590 117115841 869663719 495167768 90393942 852140605 610553227 895708903 541758454 94959453 447146319 298418371 509887286 641617409 438455130 399745177 964576223 938063811 642464146 365290343 180389950 38776282 509827721 553963278 78728718 471024017 474988219 44538423 408277020 306451572 644724730 619574959 990873952 845485676 369690574 218784075 114735555 290471648 601905379 904536113 717424622 380251585 389824787 927277332 267262014 917296388 201985450 489555451 452638571 636842896 98686377 330879125 689634071 618819124 381870074 762337270 247911082 612446823 633527781 125047508 779726405 875809689 254229502 327116667 310404281 8744030 922862676 369182824 241056921 118037199 678355611 714426333 21700349 224757221 984992882 853147266 186370104 802478091 766010178 980920228 854363811 942848822 976792150 648821817 394097875 968074926 898746209 467395817 75968078 675471510 854670397 688671500 740554136 381809461 84214468 810795617 775990954 896142190 955691824 134544121 790004815 312541412 124834180 754825720 751398138 494680125 246992255 396825075 86516993 840649916 159259834 865135965 814860638 412641225 298514061 930458128 717713502 790827795 342466039 261878613 95956961 20149236 377480099 337727561 941468472 909804406 460910591 97719414 765725739 690165564 283638435 9986923 561499506 350434201 526289793 658461643 501954661 971819703 962073260 867107203 367792384 69831740 303780910 65550257 954462161 706764375 72488530 322326611 986260683 788740556 227601917 251104832 15305309 18672519 120850413 457952363 740974216 660678152 147079020 825552191 537439140 325118332 463548084 890771392 390603225 356405812 181438400 196953574 99101627 156664597 455893256 116204834 785461075 877971041 738140591 517298083 623006570 826515403 966504719 739884860 788667274 996673412 366042371 460773806 29877663 950605753 938285997 628059346 8298030 833148401 734420141 737795318 109470688 838302355 12329746 69564696 372004315 324297015 251823116 223727946 557957879 332732397 248232649 605103605 48525660 442799595 614524553 600960139 114179650 484875410 332218503 813765522 381476317 651541681 612682290 329482585 356964583 76638658 480084074 159508728 269048563 887441221 560570393 4650997 616763435 400393828 372767340 11264003 16080116 232915706 101739354 695177588 232053018 977986153 99585366 688100222 663893791 856102537 848676876 150747700 61218966 58622088 160956741 773443777 124600491 725492895 337189190 548135049 785482069 699948908 370531986 468555661 190406256 466818143 44016638 272880746 466704180 431146554 248851911 890054260 645433040 631941755 123767159 477716843 175242242 807867525 463919413 880067931 356551094 664120358 771410867 873926198 257225475 886113996 860580747 362259753 849240790 962077531 36911094 172144243 401516460 543190170 391514409 113589169 665824660 653267141 171561948 282301636 427017236 615472816 264001462 97633024 686722074 213598690 503912646 893540490 738697661 444829624 997793026 966791039 160015426 961200353 971378528 352508755 774632480 281151757 356825341 222801227 454157131 988782933 898131539 113076760 941218402 253449620 548070531 356360725 96402742 713484657 117435946 797300779 39687467 72153347 944427511 652554001 22858471 81991483 807751673 203134070 517393270 947032402 490785458 594648711 320825470 77120384 49453802 924407169 937782472 520863538 300568900 2023598 30049392 530846812 742184240 543241021 151781938 838006448 619922964 187701488 515691353 809639082 629839700 5073925 549187224 189621913 195428532 493351794 5435667 981374594 161955666 18878561 6072902 809474676 874333668 288586429 963034936 686790762 760496511 229062183 819610264 686797042 604801828 844484189 713166898 303665933 600413525 51658535 877848734 727358439 354397724 719840279 789598362 145792609 318091695 828999663 460368365 935939693 753210430 142078678 640997096 525071308 552147064 56061109 491484198 303739807 385595395 907451247 522946029 927347374 872189797 770982311 317093044 346562769 491068472 125278710 482710995 561484482 575732947 8759633 632060502 441933289 384260433 137369451 456834424 327341048 112884087 97632099 209926503 211132377 764514218 623698304 925988430 322800692 794762098 722661465 201441300 441289119 107238901 581058340 202465033 11856828 90944595 802210538 11616401 294808401 304164084 55820427 963377587 401336765 630973359 630093567 9255710 748321476 537807507 219920485 716526698 198186682 600992597 262834046 969462370 510591740 723693149 630064266 655618824 204909099 203377394 288971773 728295061 495100765 630273290 851068155 873336210 775907849 457396752 656831222 117473047 303978754 221344069 310982670 902057773 832670949 132962147 302703293 662891992 928781698 998207177 243793666 643515817 269310885 867511534 549388085 337905091 523437766 353563365 868108975 232489513 122874209 515402512 525403886 819687552 50399928 615365792 793565817 151180890 135025843 474357624 714403450 150543058 273246425 279060525 752670230 775059102 102139443 191689110 240594627 949474097 487923490 999875795 472439458 153202153 643932031 239573697 939842994 123761861 975364302 51889582 858587508 776235381 957436726 28117447 110402837 912463598 578999183 416449282 508198639 444277703 724375503 883149446 862588075 900624717 458295473 247159942 244542080 618994065 343055417 873076293 682760947 663509936 224242885 66455579 171148917 942958626 304578151 647672646 894251921 938170577 650178736 225415469 311957283 983166543 157926100 988911149 776899330 768434781 397870466 900139857 110043447 909010102 117919302 938509799 412881818 673249957 247575098 604377926 660222903 367989039 684525703 403103226 993192653 537618588 405393244 194980809 789574559 843690962 707895911 641184416 220829815 534481776 603437068 719729364 273290653 238060373 442452272 800598210 337599650 80777359 627553887 855567702 781910105 370515697 254370187 880079692 126484033 247280750 290738568 252230816 309999342 214801472 347090945 737863179 596826147 946008944 487835218 793446676 893448922 53299227 273936285 622377673 301558240 163491172 331568827 821313197 231465957 807653692 697299048 993796429 812080331 492448310 95204497 953733883 334473673 77227557 155571575 876503322 36267367 58155178 406078859 717988505 719787505 480661990 706386298 131242893 399479421 125408957 497391187 12031419 703004295 562601242 142227590 383428215 271210466 481696371 639281327 392413737 891187446 685580738 216702266 762244753 76579200 86457260 50592939 153617358 485518356 266382382 346802583 779130982 761187632 803097460 521962129 432323562 655897555 507551105 110117663 999199899 120763082 750570248 50472348 825143827 785221942 404142638 848129571 429908853 802740257 43724338 148655240 289774311 818656486 177017507 177581600 667687909 53311596 770898375 495268758 171700041 394102063 934896158 848284697 431340178 459314426 75879152 484100197 976499106 210137975 588868809 877002237 561039808 280906263 5044204 838239993 957595367 230847060 93803659 534780652 429161808 399946777 969583634 273988257 639749109 67427126 797764098 847468607 939143379 882001408 723507868 527374282 832531280 983402881 299799063 493064045 580914110 529350766 550251438 234531465 987136892 729298235 999155126 174167496 962747582 617842706 64361916 546071616 568120390 339884467 263040996 934836081 815780136 751023511 136021059 674169130 403697046 962446358 796722866 957472466 610643534 360396789 169342040 277430680 627789091 224079962 956060908 737274480 745128659 398038773 697470635 594569784 98593371 150372826 428810827 761643453 97430851 752284884 321849096 20121158 418071614 191082293 629724491 222053078 464807991 867210888 953973515 866969479 342967518 950628858 425822535 236782062 743676340 65514855 345600022 792328952 100625858 6734396 829424192 395112241 671414605 67685191 46290912 282124298 477029348 679232856 189944069 607338562 75636536 246955894 934437018 439003532 912981754 12161692 218139834 287519786 957662874 261635612 762751777 847452527 897764044 905943919 371842305 995953811 185289394 734898205 722927767 390164133 998142604 870842759 766027983 133380787 328586808 922313877 579991216 969618620 68434684 892210315 921568136 417948397 67986808 839330621 231326458 669403417 501005418 848434601 34128078 18305788 171202210 71954832 774007876 100541424 388769331 838927978 28075755 294749229 26166513 410822426 228962729 379038089 99147223 288129364 13298348 709736314 59690951 255096143 803302759 743466832 707275044 321875774 888713755 47884942 558093691 984076962 516609486 907315299 361278494 66425217 273150374 78992586 146572571 758744744 798459094 135823918 676597046 170294192 136793592 397059311 937780837 269047321 497585069 246256958 936850353 477509057 473426144 23034149 988323974 539746462 552269118 739361297 114096987 787905867 758416982 823029283 324027233 785620372 252888794 200147566 764892032 953154786 612204926 510989909 374517541 763105487 503258376 322722115 295376356 105798171 947561635 253843779 382496104 11685319 810171479 136874618 721071936 33873068 771092111 447385561 692873930 957624958 856170895 209337696 937743795 523518503 418005679 892604033 699827850 224287829 503852838 981239728 446510816 613411138 301254539 696978655 272896409 169742355 947565633 841452294 974268130 628967671 329535825 774151291 967621707 783397481 497083006 49795342 418082971 791976484 58620358 760907140 793490706 830377624 886508598 278769060 492800498 594288826 975698090 587739421 379732123 405921700 750782171 938683462 840516710 279616295 969310207 876752104 720727000 632808689 469143500 759015104 49701523 847706214 314511428 166699116 981275581 877762405 142051072 828491083 755252304 659572779 883863584 401318054 903662753 265052916 122964858 429265372 842674790 405248594 113927158 948101864 427633665 566204916 927862456 183591918 991813622 329150846 445375855 7245159 536172045 670195605 58595273 114865884 361257569 398751717 980149115 212638119 75479467 926857293 899346565 974904774 408710643 60691561 931456995 601587910 343174075 964249227 956097629 344754836 193472690 196643498 952365968 171246931 960174692 782868159 559084031 844724472 669762312 941792592 788156815 84219336 920949565 478983461 788297656 270736434 326008847 418093365 323800943 148596152 844634973 898253053 881444558 421804517 825359327 817375940 392076475 453819820 198639684 526396624 589568745 102819548 732086171 631120036 823521136 139651898 734338601 699148302 179775418 290784531 134205267 826261814 385083283 379111993 337537307 744201940 378075178 215519177 911749347 834652914 829387572 871096909 493673561 793970269 530733738 353981773 727111537 631964699 845264169 309573828 841024484 312274704 396582062 154625562 975941153 512379754 679630762 705589200 523400472 5893378 312858113 465905505 662891858 991479300 282709649 194219453 383719568 869605529 620675952 122976256 821437347 167346522 642501465 557355215 274357959 773093202 729800474 659262856 372324800 924436523 735184576 406281305 817816482 855284593 157510058 505022914 330008027 526901639 722881175 826394787 615019556 945127126 617819988 297909452 399786225 537241141 562222086 874696480 698602741 534036998 25764097 95004040 850182971 607955281 676000525 236792859 138180834 146815026 839949775 696265881 185837926 497764736 934414634 30000612 263809976 855050337 775849818 409461314 989127381 357522375 638433592 559997426 234171918 934662 463807694 398310236 848027808 70302697 445874372 801549515 77105636 154498756 378008620 83050522 95943402 10449561 996926785 995928731 474370048 700675464 799569856 430199697 368394149 962211294 927692075 839957020 616517908 970368581 250163089 12374307 669434401 103225134 72347907 68720294 931479987 164961390 351551276 487244500 712900666 547108740 676023409 311045016 213060260 941314646 363156872 465182802 667129981 794209994 403455657 585585913 276149049 350730132 630061612 117196056 400431372 160885061 618655791 373293727 138144317 855872096 462363175 580051322 171979599 225813741 414831596 459045616 560654942 717724122 292724270 86113352 141590137 572810863 563137945 495359949 769110580 361256450 121359458 911241495 986592185 322222001 128119410 519010610 393126832 367493782 661549793 34058113 100147545 205226876 229642930 424097535 251060759 565999984 913472876 940678544 624056071 675399 333027831 975621636 113784305 832284114 353191103 394606503 100185098 574469509 845672736 152292945 548147463 593890724 420290045 621691989 198354434 718290271 830044173 30664673 402613538 124439635 510366822 204525419 427470830 672634421 241389425 372047638 915016245 728079164 465870540 363962873 639700008 806127937 887928135 472194310 685214181 777631295 860244584 529118648 53568317 495849833 764957143 417037904 116341310 137561918 169099374 336681156 988818295 54950818 875638824 48018244 512659124 728910177 494703397 288778388 395812057 572075616 274403923 654023429 162515050 131225125 897792392 465754188 467912379 108136860 894160149 597745306 465985960 227062521 72408359 756004265 146540479 198009644 21437060 709957990 313767115 297150628 224213455 469112485 170071308 550005699 628861732 773925258 642152335 215735898 717949188 28943938 480527294 874315690 231907025 475174642 100562639 344640873 952667936 964694744 310153970 580250515 498018747 416234705 759320503 189210549 416437084 316609438 37520832 531426660 397926376 600700398 504119324 170603652 914726879 62652084 330352091 755238273 337671674 904572701 695786079 998330134 987828807 337109551 43942334 95595481 63942580 58656706 1853601 229815575 809487801 748736218 810204077 274438138 563235509 715401971 164268368 362272812 862428166 19181307 154312966 628822788 505862154 684260747 465585807 462059115 33285342 172854602 934084 281017766 300240398 605902249 169009998 167273818 619848493 852620254 180845743 513243198 703721698 292361991 422981099 648832372 618334114 517154177 765173702 532227628 550377218 772940478 257599209 957576477 807696137 136935692 943899799 433216640 157872128 183354686 781029817 553540929 833733314 842585591 784675627 856802568 388643316 168634932 253381419 406423786 230233133 880870596 840794480 67088768 888121712 48085297 799299570 276875563 91167017 956267733 318361462 273795459 757211509 292613861 319897735 732396410 765048532 858188011 345194645 460998859 819428793 389712770 441295185 405353398 287891407 760069826 529793008 686567890 781479062 345050542 447025608 353861189 907308310 420399057 171732267 721303102 510081892 34240179 833102701 630845713 557258525 476843621 634433039 180787244 835574579 425588783 665459633 225449974 177200167 801782691 877811987 899574405 870439150 45617606 717998071 669491281 52484013 414608733 473095286 162183129 224797222 961900920 417625877 797277922 230567647 941119330 40807987 274012401 685016505 704573351 746812180 892784290 739608462 856344575 946853446 904789696 110326546 746190253 789015747 321893715 527774366 79518954 90312556 866220796 110888404 696136962 72213157 343678299 957732714 468704018 362032185 362532301 339998698 138299464 77440647 378571916 275970839 755313051 751374410 133045679 385744941 100017374 60708895 367082335 143349442 12783041 61228726 621813210 628544422 382203033 784193552 277104852 949749414 767859042 581780619 403036378 7699878 88149605 434484188 68331364 199160965 283006651 72161309 885673751 132722666 840602467 295917350 691405590 563585362 195632262 109633936 597556826 821628173 386989586 18189525 17796628 784116736 223362836 866507175 358943603 705068031 35445935 761044575 769140033 931381 30681025 316052908 316433728 909179793 463857889 299092405 755452328 221828863 925857310 25038624 193962330 714232402 817333986 733893683 799406803 544459754 662041845 555347640 646378773 520437954 953027563 703418711 611421562 712209858 876870227 345812554 864164726 839262496 388345831 445785776 960558283 385340810 57920566 882698603 484659569 371161579 1008728 826107137 816586384 871362678 979835343 861623858 103078110 558510757 475918801 211119631 494961990 232133412 218549610 581110931 781989681 166797717 362207381 616768514 894630289 820044157 793229213 459019058 514828073 754599545 84070373 958720826 721980977 539360745 362536086 12886588 644004482 194181289 841559292 598267457 446416128 930563325 195950927 856834655 861800845 441086657 368356091 485489602 243039702 700958342 920197886 441274832 240001417 603816174 542812517 277510213 919530363 233109617 21484499 509107059 51356781 873595726 936739805 832459231 269514033 100572028 776827481 106857621 698798596 157640627 390582666 771712148 321852367 426014338 181811183 895385000 81739915 29057522 18246587 939424656 186993712 387954729 456447799 263057863 52221537 246884420 263049632 882195540 656621945 787959949 792401726 677187628 748984311 223728559 311492336 49476756 169322182 501600479 455675137 224102443 580195681 716858123 392704841 966125473 891761740 500901968 320954506 767187372 131204219 680309634 225155127 142091113 202520032 946988330 593328283 181249349 605665089 444985289 99846622 76290776 976887772 631339766 381324850 642079606 90575189 761268775 667005173 116064040 824287370 88756542 517253019 194280275 746388344 243893894 158841519 955854248 273685624 643959367 142724639 394828481 634382715 357111261 308921662 174202224 460127632 232214328 694874760 464326471 942211897 873925325 880992820 547220261 243299856 867252855 858790687 935825519 387141391 933709764 515434015 3319467 331120408 106881370 831033393 409890383 476152025 596579399 184554761 372746283 122981162 426887861 152339391 925693965 274416447 627102223 516107424 978079143 395493715 979556887 750372917 489408350 702446909 270538065 290004321 58562714 350089167 995275242 427402882 942375321 808872075 150468073 643834005 403094745 316763535 781991147 259101396 244347480 451708387 981687958 223556097 573727123 359506419 552723252 322474256 34730400 222165117 962158138 240306331 399511500 867626130 78385785 867268379 685652157 143465462 11416963 40271238 422593458 843883192 232921215 1373645 335256711 581256700 521782775 478521566 449921951 445623117 292143284 908533042 39943847 337103771 708297403 67434461 359599801 141103656 6743303 125317471 865303781 677792524 955535793 770967255 520656803 101328552 40449785 707678293 596002214 496648754 938061460 769999018 975865642 773848402 542761026 596988479 290294849 11018875 464841621 659364841 61508761 910121821 811477140 79199310 153018601 755780647 481843837 488065062 456396901 791373224 48667466 334707133 53566589 643961332 702643788 614565797 376033303 347824955 879983920 144173713 663924599 542859131 822084769 907128671 834084464 301540980 333927315 435287539 301109257 848947674 789170583 827366393 654178232 584067836 927718076 567963893 907912634 154908710 769990804 275401646 342864442 39243324 347773869 667312224 194909456 190460115 843567525 867914143 485677330 801632040 748079628 253727615 365333504 774040314 99155120 796221648 951378481 697092486 97275115 477354667 770092743 562107002 994445700 53968556 33636251 574653677 654156941 274988462 817350917 868521991 982046956 906597387 866749890 917119710 377078918 150460694 139369233 920367456 178766072 712806969 670177936 688543043 300685020 869668251 366294878 406802874 604062642 176292608 816792909 789700842 774405676 80645939 629219700 401584087 500193127 448798490 236276792 697217104 756533149 923138332 989505057 210917066 801419919 401070215 842910930 395364276 871168964 460847514 260268463 707244101 370227583 891666192 460811024 581445956 728094404 675498386 313101929 628377157 281429985 279314168 69108498 951250637 776614235 745996406 46820273 527494052 510927420 238073201 542059218 94827910 886580219 933114511 413656558 886325629 997160299 308656771 447921435 655168948 492139173 931738196 76990112 487401755 137561817 571233605 297147103 828375207 449374356 677564272 194209164 657467 511566667 501175172 312467642 998067151 35606368 127230327 50731199 337410473 354934165 71266508 547317165 414969085 933870951 890116677 737215551 263292993 824541998 261416610 13820511 370933150 176282376 100233236 351284241 247904631 584221307 579368702 679534936 87827697 927973803 980473928 870650558 211347127 908112810 314082007 158279557 536936999 418617409 132011546 984659826 44026876 292185634 433638581 332974826 202621627 215854438 982420792 40633767 872768654 835149806 567381974 418858195 343046624 902582885 920965131 626065154 671403421 950301299 209295029 393569753 313140027 949993615 243116978 994425668 906310600 575526300 902503579 197718615 238816846 476666324 296286139 447010814 534000108 162387085 180739601 299036138 47955994 602854282 428085042 815481622 430572811 924889344 512123024 563375989 536504877 455385254 737120742 485881044 707015524 516615927 270153862 781711174 245347658 854851587 270742389 92956045 487254310 183681954 598437821 575412437 466655194 141698210 983826394 193183797 174962614 406432435 72151161 785250314 559940892 550927575 941813594 35042172 926906724 598030086 865655407 403800143 873570069 792325942 317760111 911097337 530494780 625210544 435573704 990313565 842960836 286190010 576872574 795609392 840051170 626550325 381948787 395070298 216618125 682831142 549858481 876256928 335537716 487387009 790974221 951074244 90737812 260728635 669453869 596947565 96222157 953224688 481412611 926993034 15338910 548319584 456098398 258027178 225710639 337809643 831389260 786278239 684756561 987243616 672330336 104021239 551285080 860414086 885904866 594179291 639411447 242316268 913963331 261713060 540515139 36718803 333353108 315100206 18949989 83292793 623683254 423441126 304144522 702691051 29635662 818658720 432616360 596594679 448575930 781431432 83349311 960588754 732777847 209959286 979619238 866115167 756317826 426809724 485106695 661365823 436718962 795506048 519956116 342719641 264575721 219000793 67108476 798018193 91608729 30198669 373010016 872061852 452444785 775767813 695107729 704507255 77042416 706504973 488208471 350636494 28154757 704430137 317696618 165768735 165716036 951312529 854854060 786696518 190328013 775865029 911363795 696072677 707309484 380545067 786836926 836869292 458068526 213587280 420406079 575927635 328178332 267560390 855195777 411644525 60458142 745053529 357852582 769206237 585308960 177862099 171350457 84572864 596128484 491402833 91610585 74054593 404326399 733902988 204462184 230949467 613115985 688810053 420390621 189247143 633182053 754429101 968029150 936930412 517539043 166510450 448817194 187552080 648896438 402381921 270093972 686706947 588549278 773755970 81555713 447316605 957403026 473143998 368565709 698366957 930896714 960008743 874333111 324611219 134879361 394077059 843819875 976631639 457173746 516460718 903721830 40435395 572255405 266125967 379294795 49018781 993944142 118486123 505200967 753576416 513188486 457566709 113591167 860375600 111408364 933784268 895186233 606544663 189600364 486908447 776879850 488864498 38701064 259177330 509149767 833004567 298044864 492257532 756640289 53557688 21396038 278801472 391089658 957752059 357953766 946940988 827749903 226172685 898309050 853535415 312947386 852008193 931268522 213380277 973173954 523344092 662712189 100604470 102486669 736832350 997715669 422594640 641933516 643872348 103590838 569463751 182588934 560519227 69347293 206675611 667621527 522937341 843116541 506864078 303494651 514250647 272299785 538185830 971437746 598236537 217340992 41397425 442388791 844274427 476062462 550498906 380319945 882213115 831784222 272194615 873207340 180074942 56557800 176796954 56274995 594834461 579507304 537190334 668322961 514491216 569813586 233699093 727735118 860220840 6680814 423053412 380593844 988193633 801780993 361235956 103167724 595249769 291218041 174043539 561010123 108470496 372550684 215764934 471804884 408625751 527844069 489882556 851788966 530488202 370105227 52789458 949902711 367231954 949216500 687615654 514807221 910126461 167389374 719192201 752366296 77681757 75807296 780380325 106065437 132698157 626337997 950077121 269348572 223078302 888671403 88148001 962072462 741607148 646948669 579110031 502115333 777025223 405659678 791593371 273409225 690988083 219781184 266587292 799978761 296047583 728369495 98313157 430903933 742945583 799446360 164536675 565550037 5130814 45544932 925400741 407354494 288251130 189864981 719261937 769215376 89467941 186786304 970953866 919757813 608893996 517607531 264561456 120944353 854877123 701936362 580807994 902725725 355458647 108032953 951540535 904740109 102922658 587938638 410396311 563471462 404755370 452109513 96344719 933530790 445477196 7652960 618168000 834366112 69925109 344685400 154835670 812624808 920181695 555288122 385071288 284452106 226618566 655387781 759971267 105179661 343080964 681408307 946438032 260003991 344699194 255720106 283527698 652888543 442769603 98782652 415716662 969624788 130769810 756300348 749818546 256305935 886379709 65858553 683817454 507478002 404916152 738617668 195123348 298693845 815308020 784538179 825384343 254016441 509672833 159095489 786104509 158429325 113951330 541592704 6844666 863284842 74521073 865440841 467732710 910958954 891977647 503318669 303161050 512380655 66090076 59207389 560117947 568966714 919957154 705343346 766880767 354875412 141825474 629559872 805630799 201567299 24417763 755385847 790383882 248477138 708355460 455350258 292380941 697463621 581800379 364294016 316014780 543273033 407636888 495725250 607882755 496673747 41222959 644813649 937507153 678426886 374023613 304710267 410563144 766092109 178157668 15904403 469416993 901260142 232440954 806616784 912626487 802724201 821631522 856967020 196868228 828567061 233786954 161580249 133488074 248491471 551090717 69561319 954609552 207288080 902689927 847853331 314089739 581543865 860005316 797163785 395708103 596852365 15228666 91046299 546814707 17132217 207251095 892706962 415564969 91240751 593850269 550468086 269021680 772728259 103538621 6787808 378208009 134223066 65419862 291126284 559289397 122390406 320417660 301767881 410958169 826740629 461676404 32840121 809819314 730527413 569195713 301507133 248895972 27491608 252042121 89930464 626957505 241185638 596758582 83288807 94794469 835910935 438734064 227721751 125172168 435991863 503679496 316625536 383429949 999483740 31957087 30647616 589747172 141150242 518882804 92287845 100317983 343159520 573425714 432462626 384970648 447465827 770448979 357087909 754903097 374907221 117858085 594727083 113968437 224315244 911946862 815453292 379763245 58110278 34518580 713894171 630146743 928862247 854818653 272277645 345215381 284147404 117942019 421048308 300640237 428565343 50381101 7448779 147370469 176652754 55741934 899479962 931560799 770061347 516193351 14827297 4169108 356439335 173170131 546977250 517365394 104558946 799384145 468541596 519678108 486499872 212722209 975177773 145897767 560749223 790670985 995867940 201580736 190697666 316634077 562812106 861553733 740423811 447549836 821806716 563526707 316555694 45587831 144738965 751609629 166791040 9238912 428601560 305540061 571840591 367654615 875063926 607603258 39227433 990149871 166508405 860481352 787971045 292463631 224193923 420410056 177780034 863158459 338848515 152335872 755741590 13896519 626425977 858208068 330459749 779762191 16581517 243069305 867911305 965311454 894786061 835722831 298404236 505837286 407258112 716350809 89515970 928653274 793232861 971289178 274799084 855438925 264646110 114761800 195835664 479459624 243427610 125061720 99860116 731691334 206398293 762908521 837161772 476166714 929543529 703738059 239756134 534968238 33282015 822975437 92424493 719875998 852293037 440703338 931706034 469971295 524744360 270922968 610823815 70172823 55781504 706183144 490833107 774748447 153296257 832749877 417642654 966685450 816033319 170389909 632705035 827922889 642684194 181286550 560014337 820446135 105027486 386478193 301037643 671334447 17631746 878959647 298187918 393395517 320482853 771063972 265381852 760698760 882283785 491371244 212354115 729140738 215141924 554444276 420936225 379277118 199596149 494548646 708531891 524098212 123094591 880125662 862256287 987738102 693417935 118868084 23244239 53042517 420100437 840025630 970418995 990685205 162653954 320415525 472996888 33090586 687166026 249836707 215423614 275888674 202090279 158818235 338658988 489348706 675260038 68271374 470358455 525453105 4858993 293108842 983923602 438256439 698789413 277213337 937265123 144798379 649947291 862467425 364994390 408568420 580528992 257706497 481269816 109895623 643102998 245074019 905186689 914614174 41500771 887089431 513616853 715480139 410815993 134016948 571664151 806709757 710737916 981386214 498757949 712961488 929573271 275581233 628095590 877234718 209974624 58775232 538748061 562499443 484208423 409364413 935146566 415764813 701879891 903847337 631397862 607657516 840995767 607510694 967259664 543795408 23916855 131315743 559904679 382568779 429692665 536760078 280541230 709287232 685297887 611829824 307438828 72099691 494025108 24578638 391874653 175275602 126403116 449714486 100094965 4366775 48866478 870944491 447529033 890860921 912708405 833009857 534504963 574165593 479352248 60468486 508219077 110601127 704887793 745965271 99260508 155102605 83224587 933769695 428926103 715044469 513588013 459518523 579990252 824253174 689247500 463034129 2471557 695020332 484850530 975032502 896675380 593006497 626855049 708235179 693924345 853507026 7908050 305229915 84381226 161234266 32547874 98287534 349203556 792269821 999878276 986342728 801181458 752164910 19056117 53802451 538167049 367596696 209397219 809766791 137677988 39564339 497411546 748869582 367205615 228892023 154122755 749687481 967594409 415948630 942925903 615895963 150846488 86954632 263145976 804500237 492836542 523574510 643965512 471153815 355409444 803144747 172254723 408950105 793639762 478177381 768921381 249798331 383798327 569350990 502607716 724520429 597233988 700442329 257522433 872569866 46396099 67920561 910616897 574292356 316874428 585437810 214986111 537911951 489462942 957619922 735667949 797606242 142627940 491338043 377302441 124542847 847917699 35926213 100538084 523023659 242990156 857265074 653462591 571224287 372427782 863757291 823874706 490114558 920021865 505880586 598999987 231940295 274893617 580907553 986780807 124405612 474830035 106604106 794142630 264169359 235335299 261877302 828324789 531790480 253796718 902889722 144247518 572874211 856106727 938404056 958249533 442873782 403768800 826146979 757638536 947485089 838181915 43954300 745158464 84007129 729814311 739455437 242379846 374577361 262216972 701095713 968764061 809219262 739157275 947366410 412430328 631452511 6532047 511508468 304442421 99549465 676171495 351491928 604560474 659490003 47736682 783088097 17750162 917955676 272399520 429671499 948652624 223959073 959084988 815397301 179902801 543573072 292069884 867820022 257194334 64737644 492916814 975816750 377470194 892816773 991837193 537642301 652235776 750432669 644413158 565513523 138762337 120037144 149952737 634747045 558517238 340169591 622464642 405915350 500924981 877117977 786488719 645975480 443472990 773721933 146795757 917715575 519217673 855005798 225502650 247725558 805893472 488417745 864997262 785047 139681321 986507331 69801809 389854974 149595651 143109932 620575356 159598737 95503498 336080645 238762911 896735938 751633902 293677471 311115187 99698556 328274317 999578945 172180329 393381639 600447167 309134712 73216204 875241456 974484065 771949622 135063327 864114922 230059143 531846981 326344996 20671100 360989525 803084206 929508723 311682037 106157725 783010592 426167763 789428243 84233586 117266192 546353018 889498404 382020100 160163338 894566843 58055842 955019617 531777895 279421256 588735589 96769063 679036971 133961341 964193130 920581022 632617135 696912261 128608934 507028565 922382480 615428115 823793144 709402477 455371766 128058818 263301513 789224546 339069948 292287186 539794299 620575746 110272299 595131635 497669972 155963187 323895158 759606461 118370566 223374391 397547589 150287353 587721415 811915383 733342083 721719580 625281532 115463986 264893083 465584594 91982371 728075836 791975537 430995057 324162820 374937847 291774597 858309726 654045677 621648963 740853029 33265235 402277165 781217447 438881416 835619574 160467919 52866391 838301327 345141579 165576844 752880564 55406172 423138258 420755229 817483920 929896668 126416269 714339566 72707290 336009495 299611762 387193724 96439021 510660430 400799894 155228460 816367098 675085975 529431007 836023736 75288399 995627543 983452993 988355371 609328327 605566820 172174096 532146009 792888028 4242393 930891812 572826165 656431802 437558718 21624540 735563290 516322668 889867400 146600557 381767731 379141772 819883459 924467612 272180478 5096300 314290678 424829242 628687786 963000135 960385205 145361444 214839970 860475336 448624425 211000667 917701227 208409759 758551331 297363944 491657657 843426150 548849180 560884960 393359974 328023278 765612144 828246905 4863849 672106738 47604168 764389018 606664295 402066651 460977048 687172386 913074445 658394311 944400097 385475028 596160964 291266399 601682617 630277072 862911416 80943748 844637260 798794175 236218914 331119573 121696399 388657528 671411121 556307135 396091508 199484974 344808786 409994964 244002288 270708091 636538516 895910685 381855665 72629054 222559165 23933567 735485989 213710788 435017844 289547553 169383692 676943452 384506842 532281819 269178527 173588600 785843030 318834356 588600309 189945965 253631931 305543138 109903302 722645321 899566984 525089281 74096389 100054360 197025959 38649478 394677220 803856116 566898712 134444761 289757311 471886906 484951637 590440067 186801451 391426248 84639072 452784034 584687245 884801059 257251341 604565328 448120432 416738679 16336341 578240664 625266760 78734832 346787609 813207595 764860788 493962394 675401706 477297425 493887358 517345186 601920908 913015380 903858718 954183952 785968809 391424666 388156558 918237419 514611511 36872890 922378780 838416287 383988815 616410859 668886347 556799654 536024694 434067181 247077937 916695699 829914026 790272591 598311932 592562515 316428114 91259876 990866101 807942847 902250960 977592826 400686077 432779392 487429070 719800504 595673655 145253090 866702679 594374899 338486882 74073545 497449845 408709363 840710469 78685115 906636428 53283528 259202412 150054655 961990453 107765626 26712204 704646645 605821486 723515681 195667024 767309764 424354991 887030354 991991638 982691920 849016664 951195090 599770941 111942360 79380353 210506993 960083650 599525299 822607077 13373935 629423086 727336252 699011606 277110845 666301333 339708482 941095061 665474253 925347836 807701555 290245150 938273390 16963345 823140225 175881570 485788265 258811994 85610957 777110655 839547250 173675039 398544041 737354011 538164877 960937266 56880159 146379248 836048029 390789537 318025555 689670837 919938710 372516650 48634230 270811615 266629315 979636575 543980299 966139299 502131623 831545032 222263495 601559169 588237809 789020871 98449814 829605622 192879733 959321269 770653252 375094524 63940459 666860206 462558573 618786886 767648175 306091804 766514557 606402066 41174399 639733745 950221239 964569680 568073219 314822559 340674746 213657910 150871036 494000009 525935285 901650975 465036585 285165796 833473104 732447981 324146583 569945633 44502843 778290694 376513950 921452717 860307852 746603204 575086782 629659577 847799294 779848662 820637411 277714027 396015880 38527968 163437241 899022106 259056808 615843276 79382579 766569598 959077374 771954012 169385267 391804789 806156994 739926376 297388588 758483725 947622858 347609230 75905003 147379641 348029487 406074671 373384084 349501335 246696871 137879404 668868724 634778977 898616531 647045975 846653335 99365743 829569192 325658820 753461982 223896090 327400475 13041322 842225008 992578913 272249374 606126332 963357516 199449940 364794054 767967803 577326142 281328158 789337387 927981646 357114155 475911276 833943604 935487329 371182332 194060148 957327929 949735460 998052216 589750307 204617476 139696952 13476965 321164596 333381156 985320305 650648139 161211458 180215829 133754715 432020840 856732283 92926213 858739046 86520698 650920711 447041714 223000499 366492721 377357577 295462191 584270893 695051323 925904265 100317951 148583014 667655159 639021877 704629857 422947941 811777028 889784822 976199190 551444188 58754438 258883635 512362788 827498143 728151454 987855310 230482007 815201899 560633738 69564986 847030610 910731918 106346881 167966131 135866246 215995213 512564127 72774538 678134390 605107637 687294001 309839385 70959845 651945357 977984730 976609132 969231424 922764318 348070380 278545778 62483646 901599961 843395072 831239836 171936545 106748938 496408795 25413295 913210216 358437277 632745104 208488871 264432460 272717764 805041718 362328385 36656113 340171489 99128927 106080625 141814174 92814499 617268464 31191448 445473398 906121535 843288965 680857379 840644113 44686833 82627036 519615430 772653504 288799770 993335345 588523932 554885427 418536000 917265181 35906122 441450769 237777729 588969045 75458940 984504756 296412161 127633717 934029744 393108441 292393545 160172067 856728346 130821111 879220865 750782308 815886711 546247596 859717207 231571179 911225415 575336068 711407814 434060333 511209598 668833333 444669803 498951643 279946692 238007898 360135340 772348748 112828477 86082199 139867236 169203366 450992172 946106148 803626758 123806303 38909236 643578851 252147264 495129962 294257153 480924533 856002180 427116197 619696162 467917566 381332142 66511305 514643867 285932009 992828794 825380969 619879719 515139104 68870381 70427278 459831263 713136943 290750453 985129875 798993467 201967513 146918401 937499293 813183812 465880608 353729336 24821377 336490144 202860447 252801518 888073570 551971460 666338073 795928764 623048657 282407586 628810588 354479357 131781024 604565686 190215803 597825391 220359823 962315969 186414188 143273964 732421086 471223985 387145431 427568642 31698127 298679148 972548776 773713413 438233013 584242991 996348129 261728487 860330907 792210027 221879020 976914772 978118132 780393826 346676721 840169168 812452814 227576992 269920175 889883309 324229463 999044100 456177223 384786089 128427081 825167983 454879075 586950262 35410063 173078008 811131939 409739306 413416991 757818972 6253158 167981524 850593968 573598298 999322838 658916410 456739659 381065964 727462541 255013817 554133256 29376638 619376356 18026390 101648751 825324317 31468264 471685860 974240099 610602476 480109786 933321474 33145309 919180991 424529252 198480929 164777488 378833475 542373225 680895693 544514969 565315523 895327410 585780248 813089588 136361063 865241648 79123804 597049867 927009007 731175698 475879445 949555965 813391709 725139901 828606333 479319762 937986329 129166345 184795880 331453707 321248365 816508527 620241657 207164985 348591387 414012893 410441075 973639565 489578103 45780716 516744854 170895724 296528726 635151658 375379862 166039432 585045226 559544219 990825900 967325454 96916248 386179784 795768074 384987471 765983545 330956937 811745592 147129363 564890504 541472254 929018411 950070531 436943098 274784541 455241582 619683857 965047553 231571489 295599877 918331036 584915503 356724855 200377687 551645988 51275888 351415082 624347445 236459179 552772620 673933347 871139304 497858364 29902829 700276552 80932415 555567188 167647746 935488991 525542731 447284062 707654949 514399024 35730951 303185404 592060139 585571134 362466138 174476293 276351988 887620757 263715753 221016086 121369616 964557349 841544888 720183277 983656757 572411053 59899871 480288694 374147844 597106374 777090867 363758860 161554849 700562876 72032673 89917833 340635944 546045745 537911117 662955278 569037610 578885899 237215413 82061797 266700432 195424321 649388621 216949062 441973776 51523060 827545649 706698355 118371636 137375244 555158952 106761466 524828321 984298090 36427109 60633455 912997194 993527895 649440439 787785643 491796622 863857992 90563381 230327349 73054291 940963031 876463686 775925144 879171764 359036061 839944283 372889284 3538700 852729437 827439419 719308794 25595645 340630311 300591800 834107314 776571189 190928916 329189981 716871917 827250393 168421373 531246839 472876915 462124994 434214145 455361539 161623882 914648869 135955540 777177637 745099275 460379330 305715000 738033670 282169804 245341035 545925496 736967863 504765499 300387560 30868508 615970762 747124581 612215375 925109242 404480381 277458794 656916393 106535132 116168839 613894593 330017379 206245718 177060080 420750907 990561894 537706337 948672709 563927112 238763667 32279842 553857218 596110050 400527126 172313021 476017164 928001090 128288482 455321771 522171373 554172191 78848811 802818721 23606890 355602598 787758771 333285017 675616120 714830038 502900262 5829091 510320144 237213030 731113631 954505498 937992413 407634106 647403608 550388361 143827182 890486873 486516080 496699055 690869881 66519388 105574919 328435127 944472962 981992457 782807367 344397343 228194949 300013769 133840593 160126763 419217521 826597214 134164831 251250278 148545206 320558340 50805908 407308898 716646601 834822678 992403307 787601223 891831372 177953384 467306579 774195841 928822460 272184798 742451202 343474949 255832014 784683790 283558372 282229049 709508432 88984806 419795910 824725975 992199375 629165036 443902451 217785200 405750204 465887254 746658911 101509604 724928661 122343797 160564237 129319721 804938228 944292366 659352113 560438540 428555211 707597952 394302881 23393394 523051302 376172348 717999758 495319598 317367779 536496267 361385825 678542853 482487081 296069823 268487840 198714875 522837512 700666928 158536999 388008850 313594420 785661691 607030618 582439872 530305237 192237016 224035755 821242169 637337719 114015061 191813997 731006726 230782788 442910077 51546134 69626277 495108200 20134326 829496587 692751183 941457266 201856925 590314584 244930386 937062729 326012550 338347598 440281769 465743016 241625467 756931541 136131505 73536157 470983401 256118074 683938804 580231717 950488987 892700145 226835253 915026603 490147591 192353920 117192289 620706910 397698768 946175602 847532570 511959903 43554253 83592173 655468721 793185832 398365850 376984996 716239227 415159230 702367387 906099534 343541686 906123125 964463384 657730851 841562045 602068223 400701527 365528983 492999102 740024435 489467611 360102844 762854888 439030387 333922095 154980781 886995649 302895311 612850334 94980245 100904063 332185435 458812227 936156478 437669358 343890701 278426803 375627929 617846069 879315157 345052724 89191654 495360959 302816370 937673926 294679383 748407171 768590497 137660600 728547421 447035193 692277643 905123823 713267205 340800469 801984042 341931066 842675466 826967549 73577960 219371335 673966301 317449148 868281729 282562444 511148028 668246410 200533414 640670913 279784979 630364089 988646692 148918010 644004795 121351373 785515339 102029640 877806200 862879155 650968495 282962882 312463969 127466028 276555527 882048941 402720196 586235984 330055788 976743279 92849864 611165103 267908108 611407398 844678654 355485917 137016188 153198859 183084019 298104551 89897500 505260755 622407017 136513652 606621665 634901121 655518238 567426572 498107656 107408089 85900061 296125356 582922385 563842523 72605540 444825634 632418367 707400668 733011427 133288217 605806651 569397994 204306198 476901706 283721919 34077922 339537618 498008106 795234078 361626328 329938909 654766207 911443087 988931641 324704065 995252099 73527879 672770676 523653324 485160072 59525394 341899041 208191793 937293213 772301032 627061145 75992793 925568741 368781106 256249133 218459603 197888844 873109309 139970883 908003879 806038203 289075810 149708569 112872962 369984000 411600543 67244612 966471487 162476009 497743575 59302057 122913927 362374473 526881505 639273001 289694052 256244984 26173670 682223344 103066968 761535198 826621815 642935806 378743302 382548266 10541136 987158663 197858599 369225784 561328781 422873821 141096910 997453313 404908254 219406043 414024628 767558267 420122655 991976502 916293838 268227145 40231001 11145361 563842245 931003969 428988103 450451821 189189921 823072509 185637683 40484389 291097521 867417705 201765845 467993010 619095145 2243406 242742505 369421030 785527636 696568600 870002820 138294206 601310093 575837472 54541436 384317808 313129562 498883199 846878835 849175775 65449801 285928756 313115197 629387355 601915435 384667920 868562590 169157961 638489071 560487389 38854820 506313262 21526397 403828795 956100457 727504329 595758429 180206999 308460039 220738016 938471609 175847543 879138917 249517600 33096959 934003662 751316326 112752030 411355254 213313568 844587025 211835164 966411282 57295458 190279496 486309286 819178620 919051649 436059552 657008900 241454880 283126727 903503385 506590396 558417729 181760555 204956958 3317540 691343361 805765276 858413732 479740128 397129421 174743960 305052933 826720822 993742734 323933555 319966906 332506915 224833007 183330378 944825973 460586115 326738424 589187385 288090255 839739230 921900712 872680891 538125533 246753699 464492863 575601289 303003143 194014222 262891178 598517573 58466426 224810125 162070248 525418301 502177515 725132476 976689274 410408568 203195316 101285122 410557056 243613963 320632775 880557832 190862938 531906350 400751023 545520125 995640247 970264919 159696389 201889308 516434743 236640641 306991067 410318080 242454348 541867536 778481270 849469595 443369528 981423650 193424450 310016866 591637247 861813002 321894975 819489606 239170831 420525942 590459735 902474620 934117309 592068841 261863677 24859137 752812758 639103884 227634689 396746774 10816933 778597662 598817846 543664224 314182767 807933460 867354142 635205511 12542536 26342938 965711116 14749669 462502361 903306991 293577684 843862743 611052766 101468572 357825641 866946651 950902686 912568066 177435150 282840986 204808475 277885475 156114203 965591578 848054566 338379265 126075517 410481377 659427583 315161090 135668465 770245809 569361980 176447930 33584647 268482101 308670707 282146543 497713507 197492327 810239754 913471777 537716067 993557303 758025965 462190004 125185961 830335917 58725655 471276500 331315412 916929773 916806173 177170353 798929937 818297448 57344829 144652379 532301604 504236599 670808349 69781382 455140355 702061607 940689109 944568355 141934738 405165380 475042151 736958004 933706119 477818337 216678238 190766846 31438872 283343812 497026694 336506001 255025440 501883503 808240680 752001583 86608998 137019111 133283995 914416496 159191466 692777465 645985070 250311337 110887753 272648521 468823010 701527334 314924281 288702454 443397324 420232860 498684728 976615627 492348858 109722245 588826591 612907171 52916223 140998512 238461295 924057712 98210365 526575305 214418036 631757614 911919885 486654304 906601613 202025154 175795966 512581552 477045244 239119440 283125342 603071491 356260303 391000331 619622146 174658475 660734867 15892529 7878908 511443058 680866463 896144467 698145335 416196402 67069732 931960180 405545888 492089021 80134637 781354839 447652149 980250518 364613187 409739636 197617194 627088928 605308398 518668842 322960352 960833918 922759219 674987149 554211112 905278850 779833378 449576326 618187249 949980395 209349210 631218160 214679058 658843314 659284617 784837017 424681334 431106498 542774050 767174774 961573321 550179050 911394563 943131988 938979221 311153449 52530010 686679212 342467510 472220645 752135670 958837417 715855082 856624258 935007289 687628680 261097983 392632641 499171590 7711878 969294001 646107039 322320943 957379941 889412796 151200703 559082856 937622319 38713726 280995494 213581354 789653728 800230052 847368323 1546541 934891462 524477534 706861857 518706669 823278558 443859576 917527046 797677199 256855117 413279340 963499691 100686807 326983595 712674703 923170324 7819784 610524047 558945831 288659100 195420039 802558749 973977020 191663073 211509234 980695004 252504647 396830819 953484449 133466679 406079433 651549014 694720565 40059601 397792762 908424980 452767008 161941121 718288 372545593 648137222 822469632 115551333 205417581 870364870 954480825 494189060 999546083 29503738 14557379 795472082 282308834 310430319 855849474 740425627 102342537 530706676 258426960 378833436 609609143 418913637 494884806 309030781 851357231 263025412 335077973 714846055 342914311 101605116 806913484 417884962 779891691 541952807 813506539 507265273 686854050 160679897 334683096 921702687 311393168 935631409 523573565 454414693 243698722 72171955 7707161 708498185 935236788 815557748 714301040 332821471 622043556 807331814 169993181 944759982 400938880 372756240 383593485 527714635 326438742 222287602 54160392 2655884 774095478 139815156 940275520 343550005 56076481 430766651 181131508 765845899 237286378 952612524 137262789 165164331 509939487 212202486 766763596 973743212 489666498 525971033 571562878 842763253 956849800 606614357 889589504 917549784 970647574 593985437 35305765 586278274 968515323 662483439 662327836 959406981 745554182 113671828 93183678 313229959 110965693 783929195 829950610 270901617 505425066 489431091 107348907 692555593 986741720 642653099 828323262 245961189 948598437 724664436 221898565 382860568 622458067 812473837 506009518 913557234 688317646 225117027 766713384 482985601 836580642 779495500 33909653 522275852 447417600 76065035 957383416 227199333 662227400 775810723 552939650 347280557 164827577 365384277 677647264 206533888 841277384 616603612 720468102 405929491 277638061 38066426 293835194 773545847 140636340 435699065 559257034 984269686 125571722 872088001 586785750 914274797 689714376 213857406 27828319 797693078 215797047 640109231 431267327 295494014 720188457 526250503 784381561 24851513 979109166 580995920 381929761 75680721 748740195 488083291 498856699 80484104 136302734 291072783 293391356 508792694 205481421 363858427 59416375 696377563 969503104 435994430 375402539 347745065 722454732 434281348 737088067 218150995 462660743 550985819 809631013 328784471 640221708 539751360 601698830 624602357 707588697 509144546 797886443 263826606 80087593 648460936 752921144 767554791 237189756 18967586 171819642 826612578 349201461 720753232 64377001 222821271 593248876 211382013 44930114 880295562 186383959 36645930 192746400 196608559 558228995 87530362 995865474 374833862 435065195 486161026 291304386 475415193 794462536 752782122 90715045 191936696 383217331 53120909 960027927 721520138 734981479 54039952 22091785 546990527 44096824 288375974 176635927 997292058 464128570 161767534 555305918 958163213 8613145 360683414 475475974 93083454 499411122 145968771 349127078 864783656 222006676 629745834 74621343 496984078 566229830 729132445 34088092 307619315 746959493 759886005 479462713 506583948 995686239 548224425 287605751 223442105 381078987 535633801 294184469 199497403 104528687 776502802 789788056 710487415 395729834 493599925 668714275 825815409 888817394 371347992 12169588 471251706 64307208 552684339 454155982 997285698 583270944 916986471 420569816 240658656 463931198 985343413 665743340 180303175 624579507 729675317 594764980 854882892 755389810 826289719 762108428 115355695 601064165 236894160 669467688 716983083 828483609 663883223 583033094 764418412 501592132 12885201 354675192 858392851 211100459 294229049 441353016 426477872 68274909 576072157 845966519 784788190 338467024 572400838 587013414 116613627 860409042 994924872 170609737 702791877 683490736 665124985 467151249 897423305 842213960 423321560 304011854 579784002 811084307 814258884 863702062 497390480 165775861 288412098 924582935 710117830 41936033 979388466 801828385 370689051 523009165 561187599 421779536 66829838 667118136 321826378 276084672 671158580 305576210 116294639 374583189 708172822 846906244 305249747 833218136 431999345 345323561 848256867 64601738 36070023 601427437 767601565 103951552 985260074 922512965 297142752 794511342 291845041 351983977 329711115 839891001 905145243 897169049 892417027 215565834 581841546 424239239 250736776 869554348 607751534 530619713 975114122 257229438 153520944 839297740 795755220 118675750 513796912 727641062 430294272 938277162 527785781 35344577 356681107 577208636 923709540 558849128 4450805 44256768 312942469 915629485 729830962 731107751 751829832 174440147 822176249 837227339 535570441 800323807 646695789 788458693 583100674 677693129 522109865 44084493 769418146 890220907 313683208 674779196 20744926 269353492 445166315 523825249 24451185 200167701 411431137 234477884 724337228 54796186 985648539 554226606 321117509 218864795 949755283 53793486 547514792 932746676 902342588 296839792 345894945 732046336 973631750 750517163 734105094 492725925 752560544 901939980 468388749 820478010 896814438 704705166 127600369 266687653 920507182 520318466 438918185 693511326 183814603 671607540 356553991 482622061 123756678 372930151 307067180 600286793 305593718 560170086 994235543 93717861 94918594 620106936 938091494 53558322 131599773 570421077 897634913 260429652 10002341 352915571 908818877 981135753 406987308 182015134 802198828 213872507 19846722 537379936 163418877 12901736 26934626 306437226 737099545 584897998 117017560 39720217 927499449 913130685 609102132 153201167 718465193 380422061 74912829 153047854 681275627 573160640 574699630 982465219 84893500 995832428 988748656 942191768 931590891 568506404 494276341 654943326 855268784 315718567 274717754 403761397 427795633 248264026 370573986 330599343 681783133 720932574 670486474 394573455 732047103 847212376 157256245 789684108 67527445 75550136 821369192 615184626 828457905 39031423 858032678 308086958 87798483 738917580 920324592 439930134 983069519 378479723 247480456 526177574 114134435 122884411 154379713 529719479 854375042 552685609 464895365 425900665 321323159 148122829 818593450 163548031 781188755 483379162 304823980 398481511 747428434 396770518 470509395 695873415 6304000 448053183 514569129 167223838 773955429 660701469 331730476 875422370 109217967 309314781 666629878 482035931 929897223 846067136 139423602 673544035 256901792 228719072 472932414 382444134 71043456 329381509 644558739 751309453 653325231 985339065 760844814 526139795 74067903 244287853 465063223 469174080 216607293 617749134 138635018 48179696 872659219 591964956 353576891 768688524 415682780 305698220 482405384 858894030 959826707 130223135 782873786 832637986 33659388 243513750 697674724 530762746 943213659 764670842 388175594 59016448 988347089 58900062 818880825 561894434 428019679 684374989 615301755 70826011 299180348 963360234 162209727 125444078 32049857 560745632 523774622 446383233 988366048 428379809 243156191 317856959 769793965 162488183 642717567 77083846 969829586 193535073 486208766 904359571 920603899 296040856 526685563 897860509 429794156 196243642 88258773 618703390 697002631 594879903 912153194 342450424 744119741 556255778 82690469 996823257 156748447 207336677 874934782 426970739 567158680 924527552 542108453 417010918 903610405 950482803 306391226 639156177 807853517 653217117 77910152 447429254 281987964 410133234 280421015 507232284 602465964 625628040 342696390 11692291 354174499 903881466 588270703 109733249 120342991 727180356 437723445 962025737 177865120 510273573 207208280 320156981 79528968 240982669 984694223 958112622 552826793 340620058 115293009 414570300 604811118 751686933 579923863 187646553 361947764 968505093 571575253 86710124 626841114 344023250 401781363 616960403 500650877 716298038 275008504 902788361 486711284 757273169 783237616 441191854 748095180 964086066 368573448 898838017 711585411 416620893 946511058 128090201 979496811 366243023 352524713 670451735 191531516 854779750 288212678 650721692 869929178 205923718 976344094 781367478 325403118 309219854 731309530 150795824 500875905 585009708 951947190 304522455 533301060 999579939 797493636 915242447 833465385 263275028 517062154 829780691 884353151 402948951 220337111 839180734 893519111 831997215 743059858 245833529 163558416 669537325 949089078 126562124 585704468 52617230 238322117 521401474 616924746 264340396 875308634 974650727 773437009 387729197 757475424 550259464 908984289 280267586 844239217 288269888 120840706 524253353 659427022 894988648 157796108 446067878 982250650 821348852 549051376 929187501 178385527 636484635 582303539 894514140 882933534 486825350 406723274 731195438 151845745 290243205 643770029 209384121 252158452 744329119 33668785 731133340 780426261 225810355 503679574 958541699 102345839 251201042 264029005 563165143 246462434 993305025 546806034 297808063 70846675 162836916 361964076 631650166 583500918 631861789 498080466 156588802 357885349 891287767 831483759 118876014 648696887 384493142 454637272 14425505 989351192 727857785 495823154 69402047 163454320 840384544 166627342 680690477 324836010 647871940 43932984 769466255 119036465 976597880 167148834 356234645 747030531 553431377 701272120 585913587 820134035 150383834 311807283 867167779 963898858 288180266 810521254 607682773 715390503 679835732 684397444 786601573 623116736 495937954 427208717 263967347 489387593 467787485 327357232 902496125 706805225 294755134 654638991 763323585 881176562 971493559 747885885 425569094 402396765 451189398 472941695 250513385 858977198 948416246 605781478 355686797 546232855 275418509 522834460 671999721 685403764 837974465 560822521 406375810 339875214 810294268 766125847 171562067 359488442 480321140 609071917 465807642 45084807 887817094 242708227 401428521 551543354 347673426 198705845 96485855 513530068 488239116 664544150 381477595 992767044 584440764 418749754 349595864 926297528 868983540 554298600 315823623 907964526 122291971 343315914 389403241 813472723 220650777 914086692 655430413 812071602 447300935 889548336 666841761 243730525 539506038 275679929 662538742 922274478 315317731 315413959 586623788 696702629 478280023 978911986 287295326 366156640 264997237 28922561 912963041 385401076 890125905 322534231 61483559 59386968 177460890 973055278 91911073 44360448 77968882 49243110 560146473 358006230 434548903 435680363 400895207 158001468 487539058 313229171 835678643 973420132 459536256 889566289 192405776 645490740 766368228 89050197 796290065 439360777 527131246 857971622 198130331 127917448 36493710 415276456 317331631 609772534 756564555 514463632 193007129 500712209 461875777 109825170 571707202 68335283 795561235 493294378 100134623 205635044 919109892 180953785 495558078 597549757 471210034 632961593 241331480 540872976 595334086 756649349 263155889 286087781 126724472 920772252 164417657 97097815 252498625 556501576 610186841 442475386 687347061 183597362 722972872 171880699 573333375 347715007 674531910 403105513 669101716 254181868 471729762 113571167 492987676 264032127 110870884 585021496 389151907 360193169 298836733 155689490 791370024 170726811 39818076 791647185 677290188 127813116 92164955 698729170 960386520 539415553 318700182 416070505 344838545 325389504 638363227 787640803 508436609 528365264 523490720 619325671 981326387 399035270 569304512 556368571 119446289 561991415 286655244 684730449 801784641 766290397 152945924 408228195 894036221 144242685 60296493 777211082 251562342 135478047 338237963 953006739 248155936 672798968 146283901 399820791 852266848 95812085 806059090 347366287 834410887 889554489 675189940 742412305 16127455 827946039 827324407 162086786 775099630 954680609 104654923 10493783 863675588 533297493 405292618 560194972 303701978 216506545 846058074 728692205 224283365 709364004 305537668 141281017 409298669 360595383 644141034 897861199 370112588 75204245 686339913 851941124 216144787 967245322 175487760 783128660 923148303 854741285 92091291 366425015 375898554 351111642 755512311 460294896 763671749 707609294 317350183 854364255 585650430 779771682 648901830 734368245 607662501 789063132 784327160 733089163 523524428 729559690 760178291 477790284 267193668 350622043 817531322 590729801 374790883 701593079 908473243 136146275 261543821 277380473 545571499 505980415 335226228 258736580 785514358 468255437 517303747 243316497 609736195 176766877 629476849 86789036 612821644 591840603 8621247 35812203 252382172 908606293 673955623 312623545 381711908 252361604 621233662 467249683 377708475 463117530 775353037 348853451 702793217 366260916 998916216 244889538 697952879 488162898 208851900 609864882 934983377 585582705 843475901 37639928 290241881 926600255 294734025 172922902 356221213 547886038 588064900 806054410 160713078 756303907 961986026 950265289 375052247 314555525 621948605 553790630 176860003 251321984 780182490 422067100 176378415 823825247 562545817 114651448 942142561 407304021 469950007 966500923 877289623 660029753 949332287 839830603 236932542 478031660 892854737 284805310 725223880 837475369 281903498 355678249 942050246 758173428 128011217 513740183 12398971 721288879 62713421 549607133 918137901 965577268 439812926 134733062 594722888 359832567 287483399 580470384 632233213 459973331 612121225 584410389 673189322 782300772 990979543 963879130 156749189 443362225 787295451 447334656 166953890 123647227 7800803 744419098 16187694 954980080 668330667 514203180 785292232 4899028 313959380 45657060 768538701 221578525 422062915 487354577 420639037 194457577 101458015 301033771 799132779 123733900 65714187 793661805 109964724 391421538 564708267 283087358 473489096 578826382 700234891 514018716 648072325 714240330 586364594 690546000 826327136 387268062 529975634 668392941 325947382 467213304 892851311 748187579 417648068 514008730 513751202 329952114 289396306 168307832 228262878 960559748 500857484 636542565 901305565 408415873 683959350 658743140 626176332 317666045 625840397 146458121 992425804 366774726 612435510 450835588 235286038 755945508 21813038 596788383 49956771 380800102 272810084 287089908 878114669 397016636 555934964 410333005 392060222 23378579 360355577 305338275 183806921 406868260 283956134 817250488 542518018 383455219 839133005 321224521 42645908 79796401 356285983 530395658 220280250 933010429 344127449 525254843 874849115 239463986 950383508 468294578 283352501 326046030 37542250 669209288 791782618 981535742 766903650 606363541 234348512 899178888 552077967 12606535 899506661 537426767 725150249 870659485 745117324 935497662 190699277 551423755 103672984 352562713 592353597 436668362 464590538 616797784 850876710 471255387 797581138 523423209 246229165 606344529 559397002 710535258 477797274 455200994 200619144 968435372 174785940 752398874 285729680 152471699 630545542 109541336 241992771 731745836 392045716 314224365 304067016 60900148 852144240 153811379 94139423 567053799 118556052 239655079 339799280 158517319 707626746 413256841 50814110 406531516 882087546 89005402 48786117 9611914 364433552 686850630 716116615 137084933 316135769 768632295 677278735 554495885 87108832 881987264 372812051 481969338 792617098 768837239 339520503 994914953 512038591 827553586 929453145 180313009 811557486 789822698 901825943 335390000 327302737 61684651 944743801 613930562 860882058 524466085 935951173 433892221 806725968 798917394 840735087 398111959 967735263 981179999 605256055 339218849 634134362 264918116 11785945 538960853 667877643 863751606 861363627 603394493 851027536 39580580 520705517 774492620 394595882 675280754 50664485 58602577 495229658 91832869 497358850 906633144 353871296 601077643 839625921 454294284 780489059 616652798 494522372 56465725 107196920 496454835 612827316 140936782 412892201 589930957 452371427 593698377 738297022 150606632 386104678 323229244 228047299 681418864 783487672 479857754 684213824 953920466 314923247 957840241 368833099 404883852 734357156 10198695 285776797 233983952 367008795 617433431 939336071 73104696 131231369 469070577 363655656 578928565 119119054 845439458 5085683 191780289 725906258 890715295 72725786 231946258 211916748 633082420 824590077 777200314 511248884 974196292 876743564 742489276 188348612 486816872 693528975 753249773 424210112 860347594 462899788 466771510 695973616 910016814 493048472 30847111 215731642 477597781 394406003 668136904 583582903 553902685 933967504 377898696 27674644 966485172 546745441 182559568 231194111 41218596 795684251 903628213 177019266 29324058 317205910 912593857 344232909 602175371 333061018 216873108 988113359 980368136 202792206 221156305 796342729 432001386 139020705 800832390 359195747 250258823 55966954 5657379 807591717 900269328 453420200 79972431 990448939 201643772 973704730 600656519 606108990 55610883 616121672 515687975 893775468 551768635 317841251 858152472 899499885 833537489 411978513 312815813 310905830 507044397 564361306 157849608 540629676 975445134 858450948 542949029 297780620 882855585 787377358 458658571 958897804 677074863 635159653 709950287 645695186 514987607 647842810 31281929 644424983 333710063 940850973 220318930 281958155 817081078 392462600 874089715 467577928 205469105 814251012 601942415 70625193 496950934 311943165 629592382 271933414 740009080 714697081 378061679 416289189 635590168 294368628 358411272 631709847 909585362 273861398 149222541 533160776 119967479 687220707 293610854 910159789 730670096 583433751 825855068 127635071 295019212 679385066 158278372 327289964 207569756 40861616 435746577 725915894 888846933 341940963 117874501 861259487 292723774 544816624 232661865 86907894 661654382 582259517 298010516 331419834 778628821 98379288 338498770 270618220 338286437 882932943 498678627 823208887 379175727 54795077 174535800 121403989 891325114 361962174 747259999 985984886 177817955 201465916 614515780 69384629 633816569 445026503 385319121 97453345 269179430 417628526 441097710 323259173 581142407 671708768 105346372 231614462 449466911 193132963 715990181 97852314 436371454 991122273 157971204 171344930 946417077 619069165 347410314 721112962 454639262 579285430 627513668 381461303 400615536 440077136 567921682 22374375 370983025 22386308 88175299 585944848 530751107 115925562 163289993 272204875 147434201 320735632 664165623 536041740 238377501 76567468 757825483 218771326 616911150 408380203 199447355 731991270 240833674 677278582 302543585 628734742 906100384 920713083 980107228 196502558 289744620 99536632 506913622 351904222 44649498 443185974 128881102 397163661 705537747 559639004 58583846 925818208 660553813 527682512 423717528 635308957 202646205 351502322 863926386 170408804 918937664 869117881 584552354 315505960 731425076 109324606 928517722 899558607 726501650 144800845 299349143 433843944 113340429 973829148 377981699 659023816 695250089 227229278 154821461 479306308 667815163 648503811 380693072 145124840 541443074 244926287 470735896 601158213 515103825 334382473 325484116 228510434 291872477 574021062 536744484 340553113 972810909 788558830 775429126 7026793 266818414 488962159 996793463 436546616 707961315 495379878 40798595 582093442 623709947 841919436 22510920 281356945 872744385 838337534 904910557 254865631 102220504 109990277 384547158 142805217 210911993 442777342 773536854 920900902 651633690 718165693 36383898 778093464 927014988 405217836 569528480 240047791 457847001 191811481 309518493 779157872 419844366 94847339 800032689 253801193 386184607 229964028 210623546 67306314 35124215 204569877 918841388 364961202 18865846 304754499 803283748 789481751 127519295 230306670 664487078 935992910 518734352 72592191 265993865 12866053 512252112 862675350 448220591 131272679 601747944 88663550 222612993 70059004 309891443 551439563 329978690 851722340 557022749 262488758 426857207 124697836 895326777 458178583 790729685 50428133 271561699 777658819 406928535 923579159 2218497 375079078 202499182 188160219 609381920 141673194 100809106 745738897 218876027 37811104 423436408 929379942 914808094 359302327 733716586 584312939 658550264 825978857 365278208 657249434 680767905 950056161 747210607 580838192 503167793 406437810 364176298 643356013 175023781 658295759 278433357 472312556 817780264 570345258 390574540 627876220 860022451 695597276 248356749 742364746 366134633 582125011 667492496 913981407 370885124 148860056 579189166 467277118 904267468 737657253 132378682 347541903 53494591 86994237 797964388 902491779 910761163 502938019 310641446 531137501 686558416 146867020 853327605 355992666 747935668 456125065 899303804 355078222 511248472 941346751 475535653 127189754 847700400 972669462 122921374 737353008 540565721 383576360 837488930 349694348 374079427 298694523 126688587 49883995 47566263 768289925 342587797 29285324 567116904 322098227 91955089 674163809 915974136 906274160 727025111 305178900 603664604 562918878 608457877 65580813 685159587 213375425 987558672 645498532 348223869 229126475 381173278 27162705 93414956 702744234 663195587 941493334 442927208 462991123 744906747 679520976 393941067 856397650 212500413 259176228 687179216 17942961 648734703 365757376 822048020 325254002 750021952 836800550 778040070 244528502 63365285 308349548 33596051 800493298 277068949 743411781 468374616 706180463 311618979 577355687 979578644 177405558 289471906 311964475 872586826 245859155 704909310 319019707 784355386 223299276 398139875 759707533 349699255 629303650 391796329 303610052 141636931 533680706 345630712 577560314 730443137 160758768 27467437 885987695 154962151 402810447 393337061 57585173 781743828 8196422 562036053 843111186 677475495 981648022 63539062 299854736 365392106 43887855 572902073 261056788 294611320 953651609 365483288 441733789 457542872 212564632 933120212 639185809 911635246 850677555 541106257 398569069 896203897 958172068 738020745 214700573 415563470 265407327 328962343 942311214 677650092 662968239 982341827 693502237 550976998 666233164 747199625 72306569 349505176 544885933 984646970 102902765 406242050 441683132 462693989 835831352 534481296 687801033 820794691 236366939 369903977 897052872 213564740 101334291 739662794 374592998 41895103 657018541 173633330 396424573 188927523 124615239 341761945 43159116 137484714 290216541 711887556 955974408 96096444 491162587 141724415 478876726 669847894 419692577 956761938 87469518 647510622 228223125 399208985 333800510 939414802 570202505 158096654 687654772 908685778 868629568 934910574 721355605 308461416 233028484 280231006 126352354 666805491 340719154 534960602 742102947 96351554 517966741 567547146 498968570 257865826 748410092 576694700 517015612 444025793 884793159 549679957 664214022 316223904 296203251 541120289 983088134 570181740 570463965 472640591 472958678 130525967 820394073 165318021 914815479 492486677 350023566 487980882 362347468 156872195 986679590 251618968 936527869 718578768 860536276 862414617 570495605 97923438 930625167 894688821 676755592 643030649 469988078 729579147 52518838 489574524 768245014 386554641 380706784 722040174 748958951 162142122 644003829 467445037 90727230 569633347 659896218 407142653 366487730 496321253 327840750 315540103 706766695 884566140 791438946 577679772 803060564 831162739 787800941 616917616 194144668 387776816 604245978 49133482 923771933 457974563 140967414 572383690 510777534 899350731 679923931 567423884 376813202 515830937 564201379 313898344 454769509 745672498 910718406 4239962 445212779 641932651 791255972 287719723 728249024 651866300 296900099 728861035 754900332 114907115 620132021 506168318 506560936 174462784 528606665 883243146 433005730 639289511 375242798 215331643 418444524 453723620 510127045 667442774 751279286 28984472 91965542 990936822 509587632 246232181 592179080 87468728 52279230 562967732 273842018 15474004 418930558 501421323 693362298 731909722 898781020 952913983 983899834 453960908 286551378 787080998 30605888 410963814 780873082 848185364 413746456 1540402 959712862 722110188 928841241 678338611 197132464 833503699 321307376 554137392 356417494 462453431 677723758 306966914 47337951 232040987 926660496 569328698 212053984 442687588 630694048 661057735 506758157 882170060 995775857 485365156 490497511 288113860 141984187 214170668 189249185 307226663 105721253 163158938 987071506 599525815 180247985 5396675 974749191 821547846 350780737 692810765 609455259 884736740 499126052 826664395 552235034 8917286 205703304 393435360 74889301 143256984 79043338 548972726 316029009 192535266 996162019 2505413 366819698 434634461 350764469 283873000 724682796 222854163 274869938 918280161 712329023 659021743 832464514 869533625 782384094 818891891 343728910 926534598 736043470 378589246 455491304 863780205 972327519 598685638 544793948 890976646 888111328 501649180 73165017 416787504 287576301 950917931 876102508 630409799 14475678 644016416 67132620 114025042 431628000 842986773 696425639 68836487 336223119 58189157 809581042 996562956 210670149 676027211 917051305 838947914 921140083 568390627 555066093 842654652 219482722 733400623 334427893 783446705 595376746 304848991 867700655 283299966 424973813 721231500 71982890 267317977 884375831 242908444 195643119 165750216 909935973 136272518 402795707 781239237 227825344 584711856 816929037 922464286 389739685 926719448 10689829 720772169 834772566 793931369 300300107 989256915 510500722 599044020 712308652 615918251 536348429 178278412 223327605 740017025 404080062 294911628 621754198 869707312 362123460 965714665 627582023 207336710 324380981 773625108 913735531 656382803 464865270 45402384 328069341 861504772 270319620 855504996 88452241 684938570 867764477 378345965 369610951 619511698 99970197 616255984 945448410 933740070 613003652 609300691 306303203 358676740 112284550 103353008 716705721 220552226 65566834 452667246 623747525 85800094 99294333 17346686 801121543 108329914 688841036 532422491 972600461 294814831 425982517 952115306 727283299 426433078 260631974 631792525 387808278 852700222 112051093 279541292 999395088 357112980 252328083 863606292 958097220 43245787 671243729 655057440 603467431 471382750 767309699 546854209 262189754 93929048 270832750 810801737 462886776 530599345 168007589 267561480 85167614 946966762 209933859 823719134 162297288 395855115 56778438 291875037 574019907 190726351 342121614 52322590 857594432 987713353 672443688 433768147 161574110 423733298 302111791 171277088 64051809 995940380 65163496 120220314 711133576 969076085 201571227 105128214 858306128 345750186 137533270 302091118 517069037 558392177 636996377 624920064 728315480 612122790 95837409 730960746 248608671 820780183 698893427 828097657 991646335 58531875 555751056 349266726 733510898 706773438 718828561 212621718 249257306 439852945 492389530 936848587 17825744 800841931 320265317 357278902 670449285 773656263 286119283 471567983 565477906 616391827 661280621 71442950 208657047 279036213 33276837 33474547 729998332 662774587 329999855 666615106 160304829 31508889 921013862 657354831 692723546 671047855 117576023 83200165 998893993 533403997 550399308 440038231 951692731 286280328 694960698 49363072 3340801 224633429 644777844 585099058 384396090 844591142 51513757 161021493 993606563 412879648 718361469 351100342 875094464 375598371 200907262 916479851 569574013 585389456 692870189 815417864 615687582 718153517 97875527 416009036 51011552 457608716 436695052 498218714 258067877 468723218 287287470 842625776 303581783 301779169 87493858 503351625 34386459 930555951 148586184 481745679 104662090 37953389 415216836 958762364 879200200 161964678 897594465 146569486 535038629 19316105 167684835 684916907 429921113 769907442 733726497 148235791 698907361 760800277 530631782 467787680 189738812 846163583 48762132 784551663 573021180 529517630 325688178 664500569 504724231 44147397 906768238 242089965 836336922 493873148 605643893 970633883 170728763 889827661 503504229 259624690 339416174 81218313 911370325 20536793 518654960 79378622 211219471 128884444 662760530 484427345 924450135 702133395 399515931 281892565 944687830 924625562 650510652 303759400 533285580 529556766 937628118 509797548 984869566 564272441 88668278 176258680 412858540 250480904 827594002 353645933 164864569 935714286 529098067 12078463 836394031 524811797 599214970 625167523 907813768 249996561 343535591 340931927 24460817 224036389 99708297 145327271 321719438 301476963 107434442 190348852 949720147 876712693 920512301 398977240 563249591 622344651 556422523 700237071 617377207 863186935 732740245 42692346 908967643 850285594 577705188 704567763 12367989 936002660 819258257 914168552 978927945 172924682 477698858 575481828 6271401 384960806 526926490 590141272 187368629 365902631 348496663 728276029 770932194 554220791 453998765 223312455 323677847 934197857 444340582 395916068 431237028 755853172 657429131 383095342 943811186 354780091 852878908 221332502 540172116 696276501 417202699 417841610 772683263 934659078 354479010 257185103 471102807 759762555 555766548 434518239 425690533 20326626 739525828 391056179 639592567 152730841 957240923 960790342 949238931 14981691 156384368 854903818 626719229 840683710 7207580 373100230 547967764 952554317 782210092 37387696 335341324 861189681 894758005 582949665 599198651 633153685 264993729 808064321 396551199 804972799 557455407 617743681 505036953 488397473 646637363 650980924 291108144 457939157 423621561 673484416 325801652 696136124 635008493 182942848 408135442 599666239 984105227 252355724 764922586 832315976 763537769 66506193 641672547 71938075 635237075 399004625 220269725 526481058 137298278 233212995 111626635 910160191 155802987 112754758 86944333 920258813 448203384 667774009 720871058 275809102 884893508 795159941 766005471 523240804 275769035 713746934 68945565 487611613 70486534 544386908 927407475 461911081 455659238 350593306 72201908 235277363 134054759 729842937 931158131 236791724 601857495 780110868 81340906 331109966 210376570 115584523 879336792 907709420 410135369 566460723 344048884 174746520 487449488 446228536 525084991 865184489 637091128 208166683 970515747 564191539 509278097 54199435 870215604 565637955 236189178 527072208 590459015 566457855 618031211 909615629 775658925 313628738 928846399 529560723 646077133 568948406 518162973 655718949 158208809 365170719 245020842 834739128 512253662 328118892 626255150 447238557 75361929 656242156 706069732 315244976 383667948 652453247 123830061 596298073 409689248 156045477 188512929 220392385 360094373 924508154 895453335 354275631 7168281 396678519 473170150 693446538 97086355 244305306 670214755 29681567 934361307 880174616 624163829 202837947 25979293 884200074 301333864 733548656 127418340 954364048 132458475 694079991 976738525 270815606 251360122 897340081 416575886 131185839 48287099 512267014 334861606 508072297 559347263 640666477 429840158 260902766 192688481 601540373 63041641 945923848 640270448 398972285 887878408 996768350 366757741 767525779 301830514 737195139 305886717 776469591 605362236 883854719 5850699 846035973 957252775 124909225 663086657 552568442 854073944 720412303 926107727 728415436 239919575 69569358 735985129 887787518 929441602 35441939 565144649 242561546 578774676 549437903 706275449 27435441 2342763 523707413 265755691 995926679 873101947 757013123 61278063 111562154 909623354 823371177 723243172 116605042 838422618 633049305 429583325 866718277 20613455 255021658 29797847 617792140 80474185 276565244 203090469 778497217 634459649 313632207 478591570 174889938 703827352 98179522 51401 334425687 853044248 143723262 94203092 812813312 485906008 160401822 441135144 648400156 351510076 441659494 139242057 91476480 662745139 163873734 885302730 38270603 924799458 552813925 953592842 461579058 303100184 514262352 518259047 619152821 735367114 747445667 345477750 820258546 482726268 698708782 169269381 625473199 476085730 765139046 441792236 402110727 183782525 181035246 434154342 259224419 530544161 69364122 347705509 620918487 411800350 755680867 785613055 329218297 539795696 906994487 94775739 404426317 104775038 500471491 554319013 439315758 101752455 375779257 577733530 75953214 243424344 386577510 443185684 879487417 301861335 863780260 113244165 470314258 853278740 831406420 557864806 95223254 275813755 202066016 345922156 558354933 413827406 204892086 494627787 432537544 690128429 462199729 663720603 138407775 521109159 25427763 602563646 303869080 911579740 231469316 793505889 711095992 579262697 673649581 402387397 429623474 907815275 724609732 343838661 941482623 442251855 869690884 982489784 921150330 527234373 855650311 399776290 703106731 760306368 689373804 908731620 604677144 157964807 438494532 725722836 46287362 628788511 913963132 796971095 711612832 881407327 730023936 206469370 275359178 554843375 723196811 123463435 673867207 412220594 892098741 173657514 483311673 777075617 788861865 430032227 497548602 693657283 303487747 543446407 891457637 991958698 636626285 485184916 783984669 537657746 482429735 335317723 452189183 123939413 329522563 685188080 868919460 502384462 891662176 224432211 861463139 236106495 839951280 673423411 996399998 660380131 453072453 63629576 102129781 64951945 56050171 365979078 402290277 471858958 864317441 12033003 974192182 773214479 75581300 334546208 353263287 526787790 336855672 762577350 702754019 105458858 556946674 808224977 457832267 602822982 219353379 401114925 301138814 140025791 87004432 237651918 333391311 336488775 785458627 441600403 766778644 483178404 471759398 240338026 8303001 778457599 128301836 911722007 713064780 94402845 936930953 40905050 869616562 2093918 50136430 852536191 515739408 554311489 879551499 531734968 772456887 253871806 7850374 325377190 300539082 681184866 750886404 688620221 970461014 11253876 324504573 864996149 697718748 857486460 279218404 496175259 429046574 341992422 245696653 921458270 490366691 486649980 143327434 565350455 316317416 802400692 269920050 846614469 281422160 733527978 333334197 561512995 310611546 728934868 746904999 749540133 833631973 818886585 958463437 130791168 665197876 378448245 918455994 503247673 707741863 399009855 388647754 11874702 662480940 135519519 580402674 185487689 419398631 401597734 568234631 956819845 467042676 260561606 968085194 761909747 136721210 32894364 293536622 568286854 860954332 375284892 535483911 270935864 76939941 775410871 753287466 800665694 845873477 879149353 617536082 605516354 750936795 339404830 212677343 450938786 679428040 331187961 643161094 312122123 965016245 580017373 127322338 400550639 150192522 126489425 623206896 306077590 187236979 238234532 73166797 289165637 798359522 905854752 226201361 849845155 485031433 19017552 383511649 610296720 579988949 65869995 549782479 583304051 323144522 257710473 874421401 706078956 13226358 562207583 48029102 601635435 323202454 945273615 787270574 386703436 960919699 488941410 587646833 282626591 230974706 909695861 811832411 243612781 660969412 866690259 201979347 278080208 94991370 511355369 540129514 174953482 716253388 613792683 142997160 259874942 527308820 220009589 60517487 196357482 52085367 640492323 971612623 251264364 836015500 78619524 518841525 405221326 372914830 287232857 532286583 434845878 999252218 766843507 616830300 673853605 593021342 848447122 248146035 799613531 557481484 890144522 756375765 337037784 322101971 448297842 162257984 613814898 161844560 791903104 256784494 74216501 577856310 71436335 472597163 595970350 965609434 381227800 547460305 841817815 643161854 211749366 951657418 803373819 871280788 368206978 259242225 935387443 626054325 845593310 631242290 841919601 872868997 152355030 149772323 343018321 419728644 903536729 467882542 741451729 630094005 49247935 299669730 767839730 414146506 916126972 643328273 569551765 580369785 922408687 363718930 49338540 771058325 802526986 234423281 269834126 518217434 230022243 51874012 102291262 279369000 201963419 898211710 580401220 937854689 209926145 390849418 811887580 425207392 186994313 724690612 915506692 751627510 362631749 33939856 37872074 946753605 254062675 310880738 133460441 962484576 643753576 414484077 613033714 521861031 1286321 60951683 256051652 858222867 769544687 43626161 605000834 557110408 501527408 43840850 990144470 115761949 870603571 814523826 421125797 796956332 227471309 251422557 618063156 431179166 591738056 269143964 183154415 190739517 499480223 964112049 383096326 222547447 398778470 381446975 588187722 401105259 716236694 274700342 52409855 402082596 850865259 166129697 865001425 167962350 386809514 187241203 289764933 710459784 503642825 44647969 858280218 162874503 254447411 55816757 936324637 914723573 158606855 311398617 794193929 920494268 382311428 681042605 94470630 936621235 103871871 68845731 612023774 224139265 586487476 936594663 997192795 312964175 211723003 542007443 985594950 563383410 14851947 953391958 105949694 850113285 998972442 595405394 765268841 764852566 599591735 474412127 584111893 560960163 496890909 341707056 275517667 745602068 430409608 200726990 249970078 386104418 585306000 968677167 153465686 78008577 885804173 816723020 268483168 944264615 706677726 713190325 103682860 169838943 350419192 20936837 468151026 880725533 192592891 939610957 400536870 461379731 299586322 224526263 413215486 168535776 72862108 706263490 33069538 979585245 133894061 714761852 123524980 354484347 195841445 670724767 693630394 848141506 348441407 967707348 614443048 842476990 439591807 341752500 149239133 376077735 67218026 957929117 288624305 920844533 871047465 78678473 720081152 419090133 154037683 968349567 573904723 673506822 282079190 262556874 385926116 538226836 17654616 6499713 530050016 145570870 310621264 234922364 918839368 655200861 387214175 252131612 116522484 342652923 138529859 974575882 698555083 752011196 188273986 622640398 919862933 461648388 380251805 473715889 216607332 49041746 668140797 848330873 227563352 286861062 248779718 131485777 905914011 237321684 167641965 925909211 539293313 833305833 130568419 296584735 197261525 464547849 312880500 850052368 107320075 731677214 264860179 198545727 990229564 499554310 709342896 146241561 811763351 407874022 840084583 101794766 385127808 548775971 367044242 587204892 372671086 131776701 580632980 770159038 182562719 770010421 736201789 771128951 604229077 751538786 698954420 388596838 441574239 454730946 488695794 113497944 775961098 752284545 179621308 241074172 513523524 347064058 746459643 483558735 348469440 131693058 48987079 265818739 327083056 196862326 50241935 398926970 477159309 720016302 698560358 800165879 624010316 307469712 38323459 80193396 137798141 987788994 900962204 925554466 309943845 391113966 812541736 404753931 25646191 174596562 949144270 54847129 316526204 347504968 263234964 718545200 361093715 614766280 726276891 316536588 277171944 81210699 238198715 799150092 506463540 822385725 269777598 947457711 373461639 941681276 766363124 401489366 139964580 499564691 676943128 826093470 22382882 218925744 635384945 651465611 968233029 27807567 226438241 939063842 488627587 528462404 354728836 374295235 238717547 4670277 803439889 347607351 416581938 970166115 34365812 738706969 831652991 999944868 361465779 162320787 688009092 445692196 713654524 970633280 922151892 531210407 328010686 83275655 83342763 763780623 283046197 566206674 981630667 849528777 471308221 950239127 215388139 315683432 862031000 261314040 453818980 965821693 681775234 535114850 215893739 808513884 445507027 56910070 406183409 980561830 655390335 706182452 923175731 200874092 383531488 605959493 344165114 819520337 236438141 994117813 507347798 360778691 821190826 758321356 209725012 69121846 571643818 240578497 355838249 68790675 310168593 234783340 174239417 592528911 63084655 432187454 17122008 804640293 594487006 558431942 940335609 11447269 417953105 803598295 921845467 826897674 558793235 909933338 57945765 375823510 570638103 130933308 447061870 49602284 588237012 236921711 91351453 733654912 527809522 818827826 325253736 329093273 574055928 502556403 232709294 782916980 683724583 710451518 292905208 301595426 803091330 960852349 442608602 436443731 747502700 986699370 945341683 957113465 279372574 277498254 667095592 509552658 609190633 500568306 215419172 486363783 869059058 544117964 345014221 871739824 901065640 845363620 995798642 516418783 815163151 211144477 487555876 108037705 577656135 643500617 623200878 426770012 19283978 76506498 608657040 73226258 687365210 636592036 894487529 794623352 106120628 853503674 509803556 717869283 150665082 448745950 214441577 98517747 781732876 862689529 301005247 522290914 56349257 479652905 316013910 942476429 592911961 212667572 146327068 485396470 31081911 375368785 157110995 606554294 521083995 764006289 529627356 614819879 108722654 126432451 609564213 931913447 375236057 659941320 798341352 231765933 158838243 971990974 511310521 819214236 447303439 72540510 812259263 355341002 587392158 638410675 228115829 394084489 49044574 773901207 872440402 394663130 791345232 55437579 373907572 817785913 288403823 664421947 631851429 387314427 6745320 81399078 586224861 962021186 507178351 551450166 131463271 369964327 103865438 175980312 88416295 325045657 696265663 37315295 86433346 185766751 607586412 376706579 586274928 429438003 26597653 995819731 695950448 661608906 597050062 790690469 66625111 81535252 274242915 757950493 228795465 487507698 559745453 33824006 358149387 192735969 654423786 375572672 520454934 61605283 830668592 200079579 895592270 650170253 120197690 917918758 49223906 172439300 99739708 878929847 342666102 449766926 158674135 609622393 536969801 137131439 298372177 449875911 230397252 214761968 863679022 459808656 827891331 295230216 369355286 232333668 100856781 495471563 724813407 31282784 389905840 737983240 244267944 909304616 862730113 191386042 30860334 980156516 516756879 514322466 321685822 460442012 239807933 181401288 600069324 95631494 507742346 32179691 527619436 434225100 215743495 196035720 490279355 590296913 95352246 648136961 93213167 216978090 848701745 284079262 196577717 635103004 375728052 992166245 184934345 982935627 506768156 668068929 14965031 872855726 709333227 81789365 219299442 686948850 93962159 5916332 211625805 455635321 376172889 749458686 79184900 331295831 108252223 32987118 765872361 952181102 386785365 130799260 337776429 718182375 2859388 615326211 477103701 907596566 981526766 31585405 111492488 155367568 263974222 164193237 91908599 525741739 299021692 289394914 515312559 344486176 195170127 832968218 593082647 332290518 622249524 367475005 250523714 545873323 893265114 465117978 657195142 453533118 881851363 4047952 398928788 156799402 583744650 382344073 287723089 242013397 603003749 169350892 803185224 535559090 950604174 944492383 480355291 734142938 993629281 238735333 777177728 291360856 548959306 929404807 39579521 839512246 95587491 514091332 870044225 72493471 613872891 720737119 185630077 995940550 978298888 575591439 607649770 866056432 196643164 948213105 167610975 406707006 236260552 913915434 999280813 90833727 318711595 225323046 584305252 521567800 704404336 331167110 819645466 606306546 670519676 526704365 718347310 266464513 641958669 975139298 648663099 221167448 262344472 638592372 74470273 691685005 892250559 246359898 741831047 3168734 797227692 104639252 316338387 41421680 134273889 493848217 767307985 167176043 484100185 653930001 834499122 129716660 156360861 741136436 533546744 789738433 681047476 35000878 69827743 849295163 825967727 641684941 46136162 381644685 298415426 339759897 334103561 653748320 204551952 100401917 141448140 496813980 766094556 258146784 113009177 752219090 427285996 415668098 626825200 942315500 292857952 936014546 963248282 861660620 749594713 290954744 453360797 49409493 840920135 262808 446619649 233316719 234043402 92760881 829050770 908675786 531223640 171994368 776125292 20377801 320759825 400749263 977688206 440848750 48281643 370530455 979154147 457389237 67644058 424096558 941627544 660031494 724108916 913354051 60446193 821052444 171645477 527399876 326876114 621258022 566947038 756605076 347051007 743080186 279938860 463804945 7755941 905778874 152147021 423722323 165237981 814665981 349968059 535762254 770162952 410300391 687669696 803057939 958518657 129138634 93943319 838948238 906309564 478121846 875766615 706489524 444155650 2977163 948269886 853430999 757922903 317938397 698461318 979365186 787478701 730752876 642935774 776041295 397761066 280186380 185321947 74142694 452732043 503205652 5780765 73536721 918878035 730691103 530996071 580390352 957655443 584402411 649204406 108730206 553036373 40611060 185009884 836788970 136475978 802284141 828476470 243514733 167863590 692523871 892200386 697124008 177595427 901475333 114150677 552531303 446515619 48759231 822918350 388213531 786389333 324351063 561097254 625148094 551086859 643407007 103538172 23907130 429644092 303634671 549014319 401731511 158190721 354072887 271142224 772957234 526272191 886279432 685859399 268882525 351204107 556853884 607734237 969768527 445486827 793757885 24268858 817616443 676674459 260028840 88013956 12029412 334549217 292453071 560301164 779651340 570025443 839279346 506990236 316033925 232919478 772926027 444727394 703668871 228486515 211152310 245165987 881815977 134483971 431162231 844385878 954641777 955691467 20753586 850616518 154297820 512706084 333657262 684720910 875387487 124795891 239293079 316813538 659598882 966479256 173018482 158412587 164796312 216930798 57802940 431555787 695742796 987305809 970931014 309036082 289973916 899781715 216944792 323001111 330870058 196177039 971857373 17371003 734491422 209279264 982557261 182550651 234087348 177339989 916731128 943220155 555447977 728409208 997153847 323641198 241833703 513491886 205470773 745561665 429134278 874875401 274494346 324723309 748143064 565105965 339828992 932818956 733508589 49982100 522539876 107287051 410200658 878741474 7677433 139816229 144224632 689879830 381509085 834473349 266692950 791045766 413749755 828399099 876737827 513894002 478699707 764106558 179128970 504350234 560083140 39545210 512773677 89952979 901539888 133497229 491964622 658128648 408315160 729073248 85712230 334388610 720955413 34378023 805580469 485766252 499443676 375174751 839865889 121573118 976855342 154363864 97698487 643268806 679114223 35280970 712057544 609025627 43992216 62343092 497305283 500359471 359722601 774800812 596370971 954462791 938260773 837493887 121448774 154353965 839059391 580471021 311065647 497572773 305930973 950995607 988245032 463182104 569627224 72565412 804382663 434018121 497521989 455684032 946720708 767802659 954854285 482200361 268405684 647093920 640774536 161112231 52930208 267093026 76046782 437260608 680240997 391456889 373679228 625875022 513181518 130701430 556290544 665815213 214585498 715174713 298002474 238010580 908725677 480293045 553225591 784110024 362391203 41030093 112824407 188311152 470444193 346899006 710941512 366431939 66431307 461020648 412856211 888824782 946981501 811587881 46972576 85081740 743003190 920941009 950859789 120718766 969953710 218876419 359290804 290674543 798484961 691175744 229460491 89716557 193159325 340927797 847727917 925542254 827677848 431624446 981831525 305721437 168612461 505149671 277050065 792325365 599505054 335283187 606059651 287707939 632095724 17382656 472805148 191168051 170202373 92676146 814597274 965157702 130427915 478461356 229718116 853586369 767485162 363738152 870454157 593152059 877773003 888819228 74876221 499632614 647190940 674243646 934017080 872713464 317681034 790285438 490708927 3967716 604783565 882812731 947504870 254760403 147798716 562664580 499575835 725276817 523891362 68260578 917899293 972505599 701551319 650172039 596010462 417443415 514575167 870388129 934266158 594008815 47567514 104140407 96533752 956335897 397464231 218276201 273570794 458934146 353448381 869712695 137428403 424089355 82874207 11465742 70688462 116349003 606512118 845978354 633335877 567650644 126666313 100340365 757699957 695954685 586557181 56854671 571000009 901614966 626679013 528213576 880046040 518389497 640405669 638972603 172937315 14943090 165075891 327550614 702238889 633046187 198341278 408958658 302804997 845372328 381133492 549602664 31136978 774367998 218461794 204538078 269862692 716615005 611030043 360028954 176400267 5317568 354501352 818819751 898512815 140457895 953693803 807793108 608852063 67255447 436720615 570069412 431141083 494877074 402333672 602336859 510237620 963687985 495835720 875400803 865975873 804861628 848749093 30003169 258494598 598863063 107629464 945647664 72737731 498210496 971330272 842225402 467390074 373015524 776531993 64819520 882462607 929045975 668891083 940981072 691059864 668336809 130192703 661597768 666803415 170397503 879371632 332333704 3692987 879888512 96996815 173078485 920897327 481209175 103720183 240527319 936933325 57676080 350854345 608296225 638440757 553729215 279682104 576312523 688222451 126123292 618132022 174176544 151922031 376437763 706763423 408879517 568091033 798256957 764177641 760416500 681826970 234937244 423693169 745280009 580336321 100744238 343165405 930515820 209647538 127523549 152071550 153788106 609051508 570379249 1125838 35077679 246217700 210125083 433519713 75675880 415389808 385739610 117709698 632775579 954066627 881303981 613903129 246861304 285106526 469810733 435375459 990691482 851045165 999911980 467437515 784763733 654114484 589437880 924820588 996111178 420527177 343621156 828170086 101059040 709632871 696465682 484578328 264305716 770647182 215361458 361824840 832289029 131604308 681406785 712636148 956281944 997021568 594483415 537245580 680691697 986911803 756845680 744786343 429370895 276006622 424849074 836591653 559271320 260499970 155714292 402876076 175600666 417689846 286574022 328322548 1468321 284781269 42504083 413912051 530316633 515135927 147741392 887630504 535690519 479156285 57713297 539386900 858930508 945507471 756733380 784428261 873690632 21609179 400933466 442382508 33163686 264245415 16902074 528821052 811220080 957001156 532333349 956484507 340839832 786134138 733806008 761757353 129824980 400179209 434909512 169980476 844306997 746151007 887247265 792012536 818807878 944662778 92139957 440344078 846217569 676519372 180477157 901155147 331168819 687857016 995987542 473565975 207460058 138136532 751036248 595455641 64340227 426187352 122312559 218133466 742708154 427791078 252468006 549474020 395624960 118145215 198930392 53851682 343544504 101780189 104512992 921306231 960221542 855019712 976820872 617254150 347786383 201238809 93813268 608599525 828137452 544973135 4481633 608338078 929402591 549308902 126570484 996267354 431451604 273313750 123198564 731161714 142245347 509575188 707231194 328216542 921488175 445272749 570811448 432473580 844351835 561383874 949421997 437441426 366774163 273107462 364561633 149758362 306742510 762097816 192383292 55198104 409209314 850938229 874991780 11164373 604051671 145926468 948096170 341561419 806310936 90280504 870254252 437201724 278088949 699123991 416748019 850664665 644738916 201891388 886268108 57064962 462154713 442834962 558594158 431925182 114626848 949822160 491864670 234634719 929433988 72529831 787653401 778289677 941065866 344668078 321997428 861739334 661607155 156101542 310034874 883862035 845797599 381754264 490296030 413260935 777157538 97369809 463575148 300811160 25275747 200413212 433079562 736652048 517720812 939308005 579587091 228607322 520641193 11184549 557739960 685449355 541216670 91710724 453399485 811421186 308666911 129411411 6859159 913850015 34027659 828386516 164099667 198229638 854135971 501687946 892270522 612828047 482030349 561160037 19024232 546039550 884153427 498512741 262039834 956466456 878252565 841109247 155350316 319219695 335839162 354039626 273457693 985678941 934064913 953103493 388120938 716850047 963354358 927298613 740298322 256713994 67231457 619611712 934213551 772802896 538644122 276300814 213365434 487023325 996199863 237741010 478539887 132185593 491258827 370234120 13205183 885367741 449738968 585349083 262728440 755406698 160091497 568438668 526964286 725830573 886014931 87178071 216118732 337452970 544727537 544149846 280891140 859885078 690814515 781879185 24555212 115163123 592418589 71996309 197413603 34710699 812819512 575506412 46192033 356630181 884625836 148146897 35098372 183753226 215154227 285206394 968234892 288359689 690413592 739273387 910958850 394585256 935618762 232983331 113828743 878008852 192757379 26301203 506743254 712648807 519517728 875680895 775525914 772482589 626315015 338222903 457143486 186305141 768276220 667435480 525882932 125346228 318846670 483188619 45494106 736847620 158869656 937747082 552555393 645324381 491082813 584334963 960397141 387605210 521793722 30704025 241479709 668586374 22845741 211588239 464732480 105319717 740400176 221825159 227986498 280193072 707456235 27352274 251505716 273920909 125454845 694731789 119534602 798126471 522732283 364689046 601457846 223576094 853620623 774725650 642697096 442413269 55307695 244406494 498101604 539129098 82954808 788083638 571023403 679269038 893219456 790737102 75803003 164277124 52415957 671644001 627463165 745450143 472981418 911769428 462125213 930187639 374954297 272755622 937618506 66973643 515408294 300934447 531686859 538105315 438819269 582487977 992747189 130216628 966807063 118367110 552388663 124352472 450325705 708816918 355144433 690521084 321402432 766761144 573541263 443585642 803033859 519822422 777320454 550179470 781328141 227764715 792001690 338569608 465670933 665906412 40359385 744982920 646775784 155135935 691944167 8856814 176845787 308946308 745091764 678619493 569882581 616365855 973176636 446939769 392222878 162320761 503876299 420091913 742032214 184703461 694702655 27351435 922809030 174830269 839760029 955697267 688990213 885773243 576606016 199076069 712784746 143051051 495212730 4929754 199961319 552321350 516589630 730984793 596991482 707756345 98076540 321847764 53185479 519466650 997354623 900219461 99546746 845155787 301774969 897277174 391635748 353987520 208777208 342410572 34199166 652103380 660696967 227807180 274061074 24285706 793067835 741286212 459271661 187373904 68968464 417704346 604949558 499497365 492361255 839586157 275487092 623735598 475478172 613833917 954774779 819272603 746354392 882642043 341288581 588872010 181205246 731934603 737873584 375053429 276029457 993496419 588709195 351256133 823151441 753522169 535955831 157485228 5211615 107782610 458649321 477285380 359079543 34621205 642382122 764544453 411119953 609090885 87650041 539459907 668054947 56547002 379756707 526029431 539874845 839981038 249798591 119765276 559612217 650851536 14889719 258027377 739628398 720519911 60284935 960341383 442194337 421721487 70801386 724323958 111251417 689551284 175580044 459457117 733769264 257467762 943508262 907594464 570380749 262595393 591407234 737734193 695984699 345608637 861765697 90127573 991448851 974825180 573224690 320006899 512627941 953158739 134939115 529684043 229609382 153270342 550504835 229572026 617256831 283565423 870586100 209962428 82101561 733718434 933289086 449028121 118528071 174902951 397496487 255595334 397081892 229285800 561858948 294638213 739810129 248550172 118428491 343411643 653042510 273780203 653248054 479806530 733895201 504961913 631764397 603665165 211032331 323434539 311232201 124665162 209950471 154180899 457180357 637987174 388164354 151038637 976924760 911072799 81244368 756461774 61095229 630340589 689116591 813934056 503601653 650959204 956088277 464684079 77639045 456273044 668686676 842757844 899898170 251252288 547985255 367351732 953725277 182639409 645138906 443773850 222660152 650614495 223716421 512520520 122017629 37526690 868781654 458804099 522967019 982691701 955183877 539313838 809905917 178551412 916471714 533913058 865257107 138101502 775848928 88925967 312275877 725648523 246965622 914025429 197215194 100057053 894600356 915217116 878742412 966085087 421363667 230429542 135860221 43635984 556509011 70226422 162068176 22374358 658669599 193990636 841157388 630607850 271939494 169432793 816053662 979132648 952638295 277101746 574390609 854580123 837314319 547657174 683385492 610630164 297233645 269049151 629753097 347384527 76135655 92174780 38131093 826034744 679942892 402244298 413744964 542083119 752634415 116841147 328561230 321385536 595498138 242276113 402875874 704489717 703783964 79893698 852695192 321344598 829908070 82088768 756670583 698856932 700496340 900286704 986288042 912763940 23453764 894480398 510402562 170973959 157032686 328661734 885004699 147851655 282680863 524612329 278184204 384455966 739013609 195631555 593323288 917906571 421059996 396278958 292094956 134099881 784008897 809842494 477827172 724607243 846740663 605671093 932415805 616387082 341038842 640719004 986722099 687613010 867381109 316357921 328996334 835596617 589614654 745555176 931366043 595955413 816687491 675001815 602484924 579035006 922378271 782851152 169350846 104916350 804629495 510964609 980578682 854954370 921510397 20324864 253760063 712186460 71256195 632195125 338332034 505142255 538463905 868604395 273482845 74378759 214352051 98270648 190567777 269395033 117121262 574156450 728692095 623749592 99713707 656570414 666270177 405123957 701417954 188621735 526464483 487981254 128812275 158665395 443448956 91897746 363863929 367434995 97020904 576513645 258598643 975056980 848559969 52481700 18019845 459130750 640261738 56648134 424861581 803498841 63898484 876522270 935888033 384501301 561439541 904723349 142728513 498695590 709741723 304469933 284811127 827519625 697221697 715050187 708467451 155507686 407163715 791260930 451001493 824155442 239631693 915200457 493774665 337824343 758415989 531815474 956357835 102248403 116693921 236489784 364580206 681902395 710565782 843897219 36685431 847784019 497818277 323112159 683011083 436827202 197962755 536080327 965299434 425404111 289907012 984010376 874374693 427487734 887035330 473997729 986779 643818975 503639280 155325342 642350333 984887110 491990633 814572768 153460386 472741158 691216436 468753148 97300414 109563612 795827823 711108711 529978093 205837249 909162715 611550550 994873363 881605974 891193211 346550629 461962536 227814827 859330065 756901398 919444666 564315693 375904249 156402266 398351986 947187200 830963725 856665206 419087910 314165960 463327437 962167322 85975681 485036462 903552618 499278950 240097802 123127325 36629836 934271828 243689546 646818590 265476042 730892233 589479275 403644814 756171816 282849210 718690707 68784038 632785844 532141551 101651451 69819871 973440164 732910343 301664508 130835366 719153060 838198444 280404227 549146970 628893392 482569114 411144834 20003004 920491998 826986309 585590843 393015782 572960829 689678101 995045592 302864814 567867842 602875594 784802843 495859740 914679771 730335065 868571560 660558580 461009457 83215986 673129230 114966810 946505531 142691239 580807720 513618488 591203298 205085734 719662369 351730003 359980199 871756709 909548200 684583444 696042366 910688999 154356661 772625152 457241328 961993839 525961979 254705392 283646293 519510514 210068174 902694016 103466555 965045758 804095208 95716038 759325692 709817723 695839318 500942203 744975533 296641250 987374726 185332022 799177679 549329514 623494444 874100805 806314911 438869418 163064479 632688426 708050524 226984254 854714239 126496916 122217717 253541461 460100492 508219109 951609526 551628420 579520667 914642878 322177034 38617836 507890769 264383300 256442421 692844895 227189767 510539081 873051616 205785944 758553946 6319806 819313430 900292759 650649221 176059596 886292055 211384061 628298523 436513652 614425659 634684616 103966254 843473442 804134616 910310813 81357800 843126619 314353191 560075011 704293768 111194514 262672277 961410164 169905670 687947898 312233422 527725365 254871570 161913035 30390314 816156500 429990922 880863287 761829263 950036913 266949859 910299059 585822859 943306500 869282411 27976124 723320591 660134101 145253785 610913149 659058243 155219031 367713221 669875317 100860900 196867197 176059662 185174344 684126514 893879917 36201890 780056238 300477325 206056744 464088863 301323072 512732610 842290156 527440518 830175911 497412728 127876755 134846372 857021187 586859885 807688184 820355140 935237472 480884066 467482321 786050067 522323062 587815348 246743690 481746611 916417205 347093053 878825095 566913566 720206180 746358919 218500893 172467224 900978368 723173878 26819331 348338436 258988706 831901418 224024828 586270926 577220754 988555487 414175737 952057483 485655833 216679889 607445837 870800687 555185718 401578768 256348589 69283970 939770700 399442481 731549664 199097691 519543776 864061368 805400198 626804025 866505760 730885352 433153675 855719687 452136080 68360556 425046941 816868671 525270642 694621270 791870545 127585533 412754370 896614110 888692870 422476214 80624993 216691690 206400865 919018113 474344186 719451012 970018882 325260926 27511668 155493617 968461892 398510023 224412167 959263925 109764949 396419047 514513240 817359805 240103592 273705290 435963449 559951577 49423344 161666260 658912353 415114121 323378874 610045311 521128878 634870243 481168808 139993363 988892829 548547033 100398687 337310690 414681228 312227734 36994265 301078613 410301400 393471086 226020205 412583243 765097462 795386012 799417773 666431529 374443769 402779858 566506145 889887735 886752685 526343420 784253548 450532799 154225460 806372628 464324204 302705502 376054967 951020466 613179770 24080449 512923939 629323167 516136721 506145420 430266136 528472565 211714083 729916225 393399431 45762231 361631719 795110434 285739464 20616439 910005123 998477037 104975641 297311225 860583191 179375168 84672744 1613882 353143336 207971803 679812357 174806514 54764561 743165593 126168346 336788775 907226862 203236302 251216984 713828555 889370168 678178399 246729648 124171595 869919342 255402336 754461026 466794426 570281499 93658732 143897489 89225556 912995985 222708788 210447166 539745168 14596241 794149328 615593439 320791010 193933081 564957351 485740183 293845911 147887775 248660193 398069049 325135908 753455171 901974562 273339873 523902542 871476296 698056220 262699125 971366766 219143610 430488338 879093 158650034 77907340 896071630 730422210 609861739 226007875 429414062 216927553 685132514 965000010 600674018 530958562 850706721 484002210 49715986 620488361 85272767 75923094 535241648 708949440 657255909 761993145 668852049 30537750 721506953 247554251 478500356 879668999 669656033 880951417 395252195 984934203 119561089 893500169 428085736 56176961 453625513 788102620 899755462 140322637 929400552 93221687 885689010 170636085 326489379 614827059 217628131 89820147 242420093 856095930 185043300 168774842 253692188 627088338 795927194 731420914 546189273 555819776 429597958 672929436 211881788 191856851 706305823 550954388 728259755 327681531 118988455 954296043 195366806 51688378 334247691 455148517 177373823 329119155 36187273 678626874 786047528 765744439 238930365 49007385 546280568 978829211 544634571 846716089 291203623 857240117 23996367 154367774 674822899 525701073 238733157 885755784 938723171 801700452 880060848 51204605 407809276 871217322 261000759 510325020 152348107 309778614 849935894 68083105 625368595 181843796 349183906 372562433 616021111 316028292 488445244 73244082 149088056 785747176 96225785 43000477 132608413 758342056 826543554 206948022 107138905 193920933 730927743 73804415 77645840 881876749 857430317 74167079 689967085 130863830 88709098 24812535 802259165 512004715 134882621 164999297 815759147 326900713 735311514 368194639 539989308 782764590 105792547 31213761 714264996 822773492 152660158 48740627 269979657 175259756 313859875 623315635 714174896 34343594 718784008 469588563 46455271 644015649 385233421 921928861 980655984 921013629 433369295 99072443 660093116 981187347 965898589 378538712 328757264 75997349 861540452 379189910 131997396 716979482 828125981 526420983 348853541 931028705 135711810 112535693 379999650 466674749 375259158 840223187 156786271 941010547 914289739 685900832 19253427 131265844 572847712 714982710 116875250 470580751 449190430 230014846 56692814 726742682 582298023 888930481 363994067 201940186 573031056 527705196 96850814 857308068 305458551 587940558 470902584 455175610 826985967 553841005 899306109 223006942 491983492 116427414 434886144 245568105 197411429 419286578 95916865 847419220 397535909 864214509 644508969 241830739 432792983 96993939 678845834 91224413 527115604 613054644 564546241 768975289 11889201 911081651 51534772 12920455 214165748 527102295 765370247 680340057 876497546 558276855 367641126 194275786 492687385 784406121 518730406 34925044 817252674 813572140 911115022 488639047 356012362 385168987 485894949 478459110 416765243 42594975 915716001 177089717 96127428 271491802 366153111 828647110 588351712 856069024 558428358 532010740 99156983 992495379 22191144 881067561 930937807 892619345 268589301 943959126 908149574 482997476 392105872 625161304 351110193 363093300 490758975 73609319 763435897 896599219 5344891 557043189 934744629 90469136 397085478 12420311 907198697 15736448 320525333 949931450 980521886 6017180 554219388 887914651 574769265 80707914 169880391 682588463 559444708 288112239 592050961 148278852 964942338 460776682 864381910 828458999 52474331 230829725 518057872 766505780 113726014 28021332 757269509 228361914 112580380 201544910 602668715 508435957 602904412 475161088 91624607 356461499 247340656 700536723 268541622 704023400 62579689 468809699 959571574 412329964 343484533 512118209 204355562 905973961 371272099 350007683 447709722 216035975 797084862 821007591 79523475 303289110 646683176 706926868 348801980 655479668 464687617 41522161 711588392 313299732 120911637 482532512 714064716 984159801 93551149 880418871 740097714 790618392 999551591 327852915 946832276 640887612 436581851 25918369 916883470 285700260 181282906 945706358 971346810 177958602 161102717 403783892 350716820 53222701 121810995 580547783 985762019 197096451 810371969 234781735 971976543 500801134 47977684 76624403 761131335 384593138 982973122 912149285 978488709 489741369 618517772 411353676 979709427 953225625 2214381 4410303 295003982 103302930 7248392 798256256 604019556 39757447 853065664 298223995 275203964 514406313 756538265 13767489 286230666 284574382 574200614 418161670 313120807 589736223 841775647 945457384 732691715 143144207 146460518 171020809 937068662 145902268 41258071 842757111 814829428 315849802 842643060 10991251 956853302 307586731 251276893 872697790 572386941 821908756 174089172 411663113 1369809 440694478 562766172 985447283 962074354 120884370 867078385 6612452 189809715 11275369 209897365 332308419 583297737 30388348 120879340 117928707 278074445 349310423 642461092 298843134 911037860 199105040 243743745 639708952 811317616 873105952 168056339 419870688 468742980 858083577 4739852 661773483 217736987 75603431 718291999 254988677 438753937 354447231 412694749 971510323 979177051 464289015 647947466 176777483 346899185 425586467 150571587 138032028 823157952 991865552 957823823 637991940 831959005 152597519 157161659 999742171 9087107 36670647 115099881 55553368 879113379 283107472 564941896 261655141 858383187 415854550 714805558 977385546 319467101 767650785 772424031 441358048 851129495 125689431 618463421 406472427 560852845 856602647 433871944 901186489 290816097 68129763 681620171 433029119 40732144 518853064 120934708 193641054 373025812 980034635 738594750 814477863 692253886 968957493 837031594 133960317 957049908 994310712 699306933 851648531 799875501 363454870 308344676 918781485 255046621 228718415 303854552 709074119 718208410 197460307 696948229 904478718 625778239 529833962 109796321 449518722 441510368 350280518 826361214 522146905 572694574 34041488 335574397 651510126 848628384 52888990 877578396 311644823 533816521 274762887 98398027 481678844 836931075 292214232 759674311 369443340 834581193 839708673 620537919 48593217 209071537 560817980 591702099 3413552 184957049 306931716 665037198 140955413 708886233 753487669 302528582 736747867 437263888 801126224 400428348 694361136 15381280 794947508 188349560 16126903 445073701 439913974 136578864 709859507 787786110 731208767 250903026 929661520 522452498 146729428 240318430 428760183 839232969 665820529 345268611 490594151 277893005 868845106 675545164 593145813 8433140 568425628 331757208 465156726 755580116 685574066 27113625 462473898 558499903 299815819 449351019 645351375 215061044 523985111 929065707 156640559 185940334 476624576 285809278 635234744 274710907 216790956 209891085 990624038 608177417 625287201 214416475 529384921 736083818 235497209 600083601 978293742 733215134 512904470 90754212 104354734 162657649 857143549 992369125 793514963 287707928 689000745 152235567 874851828 742813351 882668383 584273618 148214104 666159485 626877753 432474324 399802734 554970609 14281235 830726671 575707840 656978031 307021847 962737069 40031478 104942115 224034200 704291214 318007872 409079016 70113576 532450926 471653860 991094504 313657168 828039412 742782796 259745165 188821777 500539048 412100269 908825244 306813498 863505518 11119726 333610290 782665221 896295160 262183018 752460728 854596075 474624846 597121274 284996613 733577969 971856355 350104497 395148514 556333019 869973590 806628676 145702728 344470022 560741771 733907965 938593421 468501108 190696080 169464065 279930705 49601370 684980672 988293197 426341992 443763329 504443437 903921037 109932006 159247071 874945030 627378719 326216041 154643096 337616905 146838991 14645138 424275911 266004334 333882816 714897848 504751499 197680565 948990523 140484360 466101283 191362695 388783127 466971426 226814696 563368376 786864888 921725312 698478899 317776653 301048318 639627251 284729235 653641209 971024614 643348136 372646042 406668309 979252190 15745969 164613166 289431809 383758458 762296816 494818049 412685383 380211862 913347374 264965056 61024851 688521364 8224910 393000913 487293349 243825550 962598684 165355538 273571934 180983933 641948776 375227337 16807357 117224773 972109601 759569335 406498204 407685944 869957179 564877010 674490057 879803792 394011183 305292853 633741311 45252737 518771015 499212219 695940936 31827684 675163144 253137025 595184251 563681692 593385484 182280935 958400634 486835297 191951057 347827482 515815424 492270440 568984699 896622411 41674243 363280799 745218745 776815175 475545865 305122267 530764241 444284786 248375886 771944275 452563476 774528007 312882744 246740156 356746441 312206429 251151029 389471855 565497583 760100398 877100450 954477993 404427812 207110795 3533558 679455620 882744690 354135871 383237275 463937737 727825330 118139204 502751553 329299794 743593454 867896489 487476981 308183783 943086585 725807768 337649724 129618612 62442229 139731390 934870906 12016305 504327059 387688269 286466542 161335151 991022870 603917722 216714673 472983550 328181929 712909656 721788442 767446169 788582967 508317561 422062441 842267135 651358997 609305119 258674626 445682460 3612127 324310261 745568857 790469781 989331793 485922939 94346362 80320809 213769035 790345582 384541290 925383400 468952665 815149750 963296371 918076180 89445993 737482672 797838547 328746802 280753582 267448533 748425517 728202414 673985778 479997001 492989694 398770686 210441085 462908866 241457917 725733046 378810985 18459838 885174447 35915785 493410756 4730948 328250897 381731053 746054838 754752442 714267336 256672890 834950635 198130296 744291071 606100727 376678518 178460825 211850889 10455141 489285374 646563662 896691615 584372028 138775318 230499255 349104750 125047590 654225595 21214042 36771189 876558627 874506607 785606517 630807542 243299184 130994938 214074767 141826033 252867747 645520019 373891053 617720251 36727882 753646267 448003916 967701513 422885251 392763696 751302920 459121063 967811902 212212333 789449750 755450436 40859238 965945978 869495021 22858908 96590970 595234480 747896113 973242044 510849766 486272829 426609315 587313289 94768176 52099652 699203807 740603889 727641445 691809084 814168613 740022250 659070972 195604773 534966773 441285714 649247247 739240833 228991414 772962916 618710871 36338044 290494787 59450046 743309054 648616902 359209529 123966850 275248637 440979082 980852394 561321285 874049816 659901039 623822759 62784152 321514908 507244772 233175452 60963961 419717011 917169538 590292317 965674941 724504350 109310312 595332315 854632014 834545614 333332830 471602459 6574249 573522644 997255617 196120362 798733628 369852069 73290376 587342943 85629946 761755733 104081953 162475021 279024361 184901322 625652636 580819175 449787259 746129053 365299678 584093982 768392321 163748764 177658292 481344341 225491848 843819133 366166885 345351366 132392535 218223030 361866477 855366497 892314833 104304555 230015029 26805861 246940100 274709380 318088769 49805620 988999129 194612480 271089672 854144365 560604333 291882559 301483916 460288878 984463250 867250195 414296788 857616241 700835194 906731919 867301161 45269090 184095940 933116489 612817319 848606664 526721190 128670229 126841784 514473698 88433254 947122008 904778511 627990442 242638756 915879453 263729601 983813965 687492498 153001345 24302143 319590839 280507833 918416428 440529206 621570062 463821129 862331614 990301675 540154076 380810872 754052998 995426540 168443780 885805342 681920378 832883985 258433131 22323532 17710838 482540615 684504335 90306782 772131284 464757399 596018940 26531486 358641872 106991157 502585933 531840128 765687979 6881364 344463966 523899265 496869104 325607284 5310102 788899452 414213461 201523404 280333838 785813881 753393766 203941482 897078253 811042138 838300256 708360689 405184426 113119218 632706720 479797318 819412904 168125150 972639071 697563398 81685522 222218801 120267421 616303083 316671255 507817366 691335234 890428895 745167493 21428695 313967235 951953064 617539043 370476591 174219846 696609205 377160530 308848941 836689564 118539694 947410161 773179495 352623222 399140870 593340804 773452856 164139346 769029810 754504301 262715583 977301423 449641781 238667127 763956252 50775284 281370696 431865748 970731640 688369562 329353652 844092973 477708133 703047637 935177856 33927216 641377996 121994067 716778163 929932452 260642109 825691989 860701740 990570113 549476429 349032252 119066488 96719150 963188013 79209785 372065750 548708784 106728266 807674303 446828876 626263119 630815280 45065068 798506633 685930666 873766411 107789761 230662123 897972637 72167378 850070316 504435609 584880006 511151892 376418079 829069741 6045467 187004710 444268218 931327046 947842802 613869522 596170236 36914651 834439044 719135127 55893553 995641121 666803993 855495113 124073895 710084246 57757705 710868279 210515206 157013911 255534456 429103508 687343382 966365407 703736079 330624340 413446906 352011377 712395845 468728653 401344568 456814767 519220834 947160944 68695237 610037206 600798783 591866510 923326775 308132137 925422104 314607058 905342673 460586925 355045287 868775929 197045462 890225706 993996350 263569581 411052884 400067209 68250155 806656833 476740509 551897890 31385215 553468690 93012055 76726709 186818316 859947515 468926129 99892719 496167806 825555024 194888326 183557784 142589969 226780316 53106081 912498529 647327228 920361640 871721713 381374854 746837185 293853066 538203920 188094551 115432486 633105315 303939019 265694273 193362704 609227088 755089610 916187843 628244113 822389259 154024265 981381145 911485637 574878520 375321744 497204653 253065439 756452391 521074040 142884111 154645371 584908590 517988366 784559646 737796141 993751974 834648012 256461531 734373264 734990887 94604366 140197962 689655293 577487974 730877493 728174904 704355391 227768042 206282629 299008360 155422039 58210538 580250016 82414258 506084314 582459231 571917187 216543564 704944587 852186343 818667111 689597111 388328654 420709609 432882861 389859298 62338160 473314326 966199260 768847889 390820817 380215648 566118899 632524811 842635996 292440355 293447934 989531798 846717053 339054131 880979219 256989691 182634569 765320615 874461567 508938894 963293678 45093030 725456501 97811157 937942534 675891837 656880474 917646763 394819034 896452663 576452895 349990871 40564456 995550964 639179811 336575227 932430505 587643364 625765665 254695284 745464477 121987595 134971088 325872315 178034962 516174677 580610221 661335967 385400783 349202009 793172192 93934499 397672024 476428963 269627867 431261719 651577974 429006042 59404982 846246873 801591923 234099108 237176042 257615879 614092697 783624807 444519728 195109191 619147164 370110447 906439 786656767 383211191 165367047 813131 130296421 25115506 489951955 532429988 928602636 738214467 820689081 345901678 177938485 46469161 779199221 226595061 361575137 949616797 949235958 522897723 788864240 481064870 459547805 566675967 323152051 308051863 380546929 41997012 414154349 704598569 259881462 629490725 923947102 352615648 452902232 620126159 986999449 750995268 188661684 377209323 687400969 273956111 742293520 133870000 264588200 346079402 997307160 774750726 225393275 899598196 918307062 263241027 472275874 871469454 633555067 642211424 562500483 54157913 854040814 488892699 505044256 318357886 298384211 771439032 761564994 732465796 966362814 440833582 605426596 125844705 92891842 246666107 549884864 771251853 778447998 502761495 166421300 973559941 741098560 379190900 512641931 728297725 114512011 346143434 568391768 292576691 409416225 805723127 499689827 549692671 174243055 285990457 79794814 591553073 314206042 12550611 89971340 421601442 226852929 146564992 865041369 386585750 320843512 743657051 728322212 602206657 40975883 987848334 548792952 308116348 508960709 366324458 327210158 128931333 734918793 749957873 688215412 890059370 391465339 160488405 804156 69635178 232190172 329700470 731641202 284016362 198180212 892901775 867814143 767177497 252913121 243809331 182591265 960744051 974082430 29820568 565123900 970338373 403619777 69461469 667018541 115791996 561032341 799531697 855517033 418937079 654042892 834988454 455166443 551965482 767020635 727407198 914628899 981874280 321000197 551589044 430154431 986000241 169885526 890218592 842226606 373738779 529929966 14334261 805015722 676074339 955703493 381556944 875067149 174289051 484932918 620200083 805520877 826526312 387136234 976804867 831939898 524619020 612495628 734649471 961785404 591226745 511013076 146981580 495196025 477101549 87064109 428328259 654466692 116532644 192982520 761245999 356630907 862683059 992927649 300060955 199887334 297128279 16244527 842797497 865616910 419650641 572869612 911239431 31624373 271339053 854101985 410622725 606283018 715160431 5260492 459632205 404284082 472805054 657643149 415063364 57782321 343685151 961986139 132092934 51227693 889261819 164473624 224709096 325205520 304196546 531554978 295751114 437186682 20471620 606932904 57875281 1232686 54370082 346531828 300420953 143309073 332229746 597851463 317092553 863779427 732867712 275137048 794008790 27334908 557949877 128523583 881225774 351576655 679471338 102798084 609915485 534757881 382010042 706950627 774321750 583284737 758802673 822399199 886453780 89363958 952795916 352839440 358558682 853030274 61202134 97645066 993231400 324405718 571268835 133709469 136960250 508607981 133229106 864899923 135347451 786953953 682684839 963024014 491883170 935842818 70326896 434046667 66420408 9278937 602200707 254774806 919359905 262578919 767932922 142837179 239018094 88967361 424769310 771576909 143723750 33345510 228114069 633717146 54785897 510753489 366513155 727065304 633426271 381473938 695772800 169215346 600138562 369270202 679505495 308810019 553110071 758512954 421155993 960048780 60205597 160231819 516169728 957853401 106245939 482337430 38340023 723245995 786746791 144907116 763944075 977382112 192392914 883778268 725394276 453961201 572922133 962572316 807276539 807446519 621139625 106242117 213067316 974207311 468398547 395845969 706268271 439332138 408758698 822319044 278849613 747536486 460257355 117086275 996752312 504770580 776219471 694831460 958405620 52702758 440795284 916098078 602380779 763885222 767420792 308903370 774605775 856956195 314136677 59584676 465837572 170728170 78139827 463471328 82052450 148487010 173170952 682455145 911086507 423910709 102420886 605311542 552040186 77529986 36841191 381352709 860895101 819315048 578576988 999067348 265812380 162269314 35878479 247670578 466132745 996218519 880622981 569111525 729606910 197611789 749527245 760645097 746310926 273166183 901733706 332132255 698347172 957040749 721719235 679056057 497225152 199388722 786574029 901341900 383268964 126448363 742922759 634163478 760183469 64186213 848544318 160757858 974303332 685375242 322027141 432724055 367339500 545891980 998779589 986794347 866218908 430384229 68613377 375884015 645765236 17498538 992956040 674899381 735852019 59441554 283781499 271842668 146562359 639608439 163911273 518884081 323997413 396519586 459892668 985452549 239880100 749293897 622326866 561132299 700729832 992290042 867441005 334663433 389092117 166849742 991103737 542310848 191876509 578515397 688349787 253046699 320792771 999898128 984651697 14111976 831445547 102976178 626803775 671839166 319036672 735714303 835825905 262935989 273698512 686694476 664250690 556265762 457607927 131219094 633933901 195556300 715486387 931374442 731101609 527845498 873884315 337883416 809108043 81323911 354986072 822230552 266510612 41657028 126694715 396297004 189205886 113473160 726774147 598940694 641303901 898021824 121773696 760262295 989649348 987292441 305490316 84448920 815262625 751691337 88853774 521833668 159657986 223625390 359677966 238168594 334029118 523860734 164689130 830864572 67154286 144239681 60243143 648932864 757866964 288793251 592656907 648914093 997521395 224495687 534389360 118512212 653892892 80846694 956422321 443820293 365273552 647090130 791712583 541295643 865617970 692947844 48747092 945922449 21488297 434444084 962840915 519573299 447756864 84465358 44411659 792262906 268647595 87992240 400059462 358130371 280154583 797692945 619494988 907224467 378516839 274558131 913144221 151962561 69804081 846762515 143967975 99869911 153796161 131576751 865759701 992804643 612341847 89548049 42086496 985082304 728815120 787791072 773880470 981627480 523752308 206555293 215056904 923655919 7641143 224437097 627616080 921692116 884779537 176771391 981418887 913866688 816040021 961388414 932679480 561569293 852478720 478897192 399941840 173750913 682317536 969008068 904352290 211294894 869852950 505008048 131217553 15506418 99386473 499399263 752426197 545432510 884643304 682838379 28905861 607896859 235037292 646827980 80183614 696342116 586992365 790965516 462744957 415214457 521482909 676007333 838230473 629716255 761440140 80982454 310153964 977453314 556569787 488557421 801745607 803712301 529020441 526366689 805586700 34235171 443376290 606722145 375655433 664348632 241372306 935316490 509414448 126821052 715448494 846155052 820338355 491415843 901459590 203643178 484207560 457644896 766967904 466677436 958865430 296257803 50475393 13935692 361910239 418877554 544490563 455216156 444127579 921908424 997298966 777879212 869318560 653120677 959350315 706141058 256330217 456281250 263398795 672469941 979477710 433796455 458546535 497004532 784736108 848513456 691226109 372874383 920881020 948952494 736628255 301652517 385489138 713391161 309228655 96530499 883317793 819762562 63007006 132370790 687573381 271559590 934148927 409935456 457520666 481299564 926582328 156465489 823599344 547995482 521787059 823690820 30600491 243897541 487109125 313789903 356739684 774401349 419665426 450505998 289880341 751253070 403223889 83768133 441097283 980494604 573468824 513681803 103348723 634079054 433833137 490858508 153946083 971948328 482899107 855460779 928096749 210316415 854956385 595348544 836682948 992911599 481986006 126345870 252194726 797674680 712793790 627568695 263823729 986363457 645865234 153677280 873806107 754138900 513671946 975877841 278262090 20324701 489045520 382979695 38888699 305211764 305882316 783868074 473965327 544171854 190107295 10992292 578935734 73104435 180429338 50363107 636826233 949825377 545787076 830959301 578590235 475686062 163145250 920034287 870223101 464301693 598479417 578253914 893967793 187504206 453207409 936012744 495627537 450312091 398756414 817137505 827813229 362901522 439891931 3980534 260588687 193684049 533889313 840881505 851415823 205570828 118576751 646434886 545359828 599026179 975799162 530712254 88437348 888171717 423298655 813652739 827957935 454426036 799369721 673562433 641202370 10009987 963836031 344847531 603444028 797160198 263407893 146384076 502347941 892333237 153491199 755717356 516784908 970409969 366012077 140285223 285161865 778209735 903145999 619057289 55716259 470212817 577980854 54493467 880460811 150710638 800438952 340904396 793526085 799016034 266511353 980538549 654365035 209244464 473323131 618133904 287399880 265313208 560957870 743344150 264229491 858405414 287622382 986844041 974703484 993201967 443183162 464592431 145229506 368137247 597661138 424194104 85120385 72217332 890796999 519070656 632072354 289025176 887482187 28560802 253213518 45588876 137238963 268014571 422827172 927440231 92397648 563381982 420695402 127113765 376675879 612077167 390850831 260218291 786985581 462486570 232216429 387676101 411300358 60872763 189754516 458183814 817207628 219821311 750570545 767352383 656890756 1007230 69843343 841898766 996971356 292304633 236599252 763645980 408939139 968707325 240956432 971352677 332373492 840540875 686268777 616924961 217181827 245928700 406004292 180423797 228914943 71138109 511581455 249762379 444663395 853917864 795385648 832412536 401227615 379153327 495801368 97624931 382004749 968545595 97003566 657873888 353402568 431824908 315963473 469551969 299723754 903022030 890217908 317556043 743619809 74661977 143919555 267734829 197739616 212682590 614723178 770209248 651117628 407584843 13065878 143453389 515765776 984166778 486222276 184172388 799485616 801264705 118048201 344601015 400475801 890589752 79188630 952726937 839756063 958351485 97452984 470093816 785882665 867831830 38097688 698148498 199248063 445478945 333994236 602922946 151168554 709483425 312618227 626141647 657826088 334936118 294917367 409641467 817245067 265420118 746658209 264634916 80086459 137155193 220757701 61143249 410564296 822336680 97408906 594887066 874936245 213568163 703915534 272654767 247526867 239842938 129739882 955606872 461367997 722638619 227692656 574386311 771645514 177201868 950814644 738074325 1306230 870917973 468456318 196597610 391288632 213331425 569158808 678661684 198617942 98121579 953795837 120147696 412162527 527949031 78530793 825095253 208158676 372721623 440357314 912889136 161171788 318654926 33022912 82293723 703712016 145980849 29618382 47293222 641970962 223480048 25379087 922927082 150201312 280303492 381524246 552353998 752669698 757471709 716360240 911247228 475738829 435712136 86450565 281571878 643105613 313324209 124806285 82464971 602366163 865191774 802082817 591009780 226084049 979135402 818798265 813873315 377995921 128785353 361681497 258955911 938711301 33685263 706225080 342561595 275762300 123920608 233022435 234435030 643939551 331707781 635071230 825480287 554725894 815833083 931025672 771727703 44545749 787958199 667476152 986251991 730851651 567977608 452015128 27433836 753868405 45251867 528435476 995245566 708225152 890755239 817630432 741141873 526578659 595859970 184389955 566337138 932798428 462011139 317836632 621324230 634120996 568637369 505510171 81015602 474104014 323817540 17684624 594821909 813522155 729480222 361469205 5179321 74430040 845232984 451109201 616560688 388771062 569749031 55126796 676457858 467015531 752057620 543054330 996165005 925292329 53848042 765762277 442822422 511902512 221554444 601474350 679788631 778761980 712308589 658831791 564903159 927662721 477274065 798715803 184087313 632842842 857421127 134148663 364599916 285629486 277838103 252819283 962159087 212554098 456354782 527234455 453814124 144049057 397355817 86428859 569563269 791257381 261612557 840804422 708266128 808305569 618761166 125390241 25985343 716456762 241840627 45419506 736390943 720315991 895669036 690069955 718615950 760606855 953393632 855301702 131772255 731064277 944669891 140893745 732346208 509695399 183785917 69295915 711089451 630364361 284040484 637922760 905069325 45329379 946305077 238992086 141334201 390983600 677595471 382210644 897294297 927803736 541168589 442938125 314451261 520821783 739225996 248355569 485110859 686498665 779774230 626320622 836138530 432141947 884156021 962270486 778912340 965749438 885744620 676063879 178451982 611198690 499007770 662262909 891963515 3206205 895222221 634264109 316025140 291102747 740884391 559578129 590212668 982031987 826655979 746582886 994789482 845893539 100202480 498524654 605250900 406037138 20088117 69016866 369527143 468225631 269934169 233011277 61399699 963667220 711547658 128821656 26758150 616180469 257168742 187204200 831179703 184128450 235690242 355345485 35335997 61597149 793497952 787986716 624797720 828544779 243458094 437730823 134717694 431579617 747077730 520129620 597248279 635637198 53486566 773938642 750053027 343343720 87341940 383436805 661080644 681788830 379791717 205234204 135588192 157622784 239010142 379040766 786158790 189917479 477787061 583297346 914061028 480890816 831651104 908140587 813073600 822801096 886255070 482413499 255876134 537878849 211361070 99462627 933755066 74289433 614457283 398546622 476050315 191171438 256950849 228039611 357717199 107242020 868891385 285525727 131885766 636588847 385807878 118194838 874678940 136506802 550707209 206211039 193119784 908890976 474448542 322420947 315643280 312017526 718754975 918540343 212655107 246481436 499874069 644826040 250034792 553254088 801090804 89944284 190310251 836099898 735731675 969847892 51203709 158314714 311312090 494551476 647274073 956783203 446947556 505210409 867795172 934894085 948474119 746521660 924112539 304399452 344686804 850034837 991763617 187632229 281974818 457248521 723845299 505049865 62252013 694585076 799185490 157657839 889848746 766585399 540445080 213944249 842382466 560167702 578207848 327535291 167108879 990457050 865137696 934680424 630525331 917037193 880001395 566310496 558718776 578033926 170894471 917561221 78940161 998944231 622206343 342629799 243294972 668643925 80054301 992860464 709018205 119196030 75904505 672744071 868074607 710660786 834433653 323911801 869637883 757807000 409862176 298940500 142674517 859872338 606376145 407067580 637246605 582601672 10747497 287597545 444334532 481306295 686064475 649752479 838040453 441939181 13501296 591486332 620918446 592656814 132574480 825094667 922736513 689097217 532752428 655510336 473870317 974153890 720619666 188736930 258399265 973177960 902948575 344203479 312177393 52644538 742750888 868076326 827459414 34464739 85074747 365593413 86347432 298845638 114273148 222488030 819361820 608746052 727667943 533942863 398891050 16297199 867900630 424724163 981440898 812963831 427312406 679086415 607816355 162875388 605659039 302160746 286898290 966582981 393505331 731338633 245239889 586284514 570698637 56343924 49253896 647508424 537189299 474863969 871546837 883730984 452098246 695015953 547368251 66486664 778865501 855763459 366039996 407375504 440263148 731841511 290662223 771294846 332148665 510451039 495652440 379063751 151393815 483559842 218263120 308267109 396507022 958330193 162221398 851532088 297737292 329210706 520542891 128134228 615356827 330884600 171987689 591066043 451065443 305684664 779824743 884009254 395033224 858108465 166704217 799655550 55479930 345600810 92666778 76098059 848167645 652036686 951600329 222447025 822214957 943911919 641450239 592670096 106987546 661152917 524093841 981422078 521369132 223398802 565225350 750842105 323763217 953067997 611479499 981802286 672453825 525087216 195956380 179912360 452384205 225103439 560880071 594593661 747129761 147312366 469807901 457506085 499769248 855402205 775942534 268250048 690857154 172106318 788380881 335065407 388196141 82943648 337845380 376496962 255782480 560242395 979195842 754469224 615550912 30117793 800673826 543833149 519497999 780976071 647525784 727572116 492783229 351026640 645783231 893100120 714796328 701411917 703346949 589766182 179991371 693181391 164229685 951848246 935133157 198468572 430289531 643566468 471139757 224667515 119966588 46248973 445966373 831338285 122332227 111484152 272760140 812303228 292519094 904673517 122833290 23761509 623233046 558417339 127869225 108792977 860763050 893295287 492846734 974587936 384532053 461955105 201570037 193405371 624308630 806875201 439183147 522393192 328982631 626831560 841133990 407451286 569083810 39686136 919910347 361015361 849321285 380811513 776938973 156038131 80546276 598007331 698694885 664469853 542098360 747099493 105794987 909226298 758147485 284716953 895583225 370619891 715454192 812164362 626952377 390776410 462680096 928905086 34488042 290857225 504835795 25611716 336884113 769710407 555243891 175948364 163856373 652837219 829391141 132683464 572153498 130499508 862232451 534092478 944296358 492796972 77594492 221570289 637540888 356700511 343863966 925082583 722241682 701459469 366738284 767803656 142493751 601109580 122389205 44528775 841222438 198840140 302719678 148355625 721829582 339607793 712219270 577216180 210726074 725754870 907324374 449039297 159058914 968978237 212941175 673367929 190620913 129834399 719825395 163115311 684954633 326836405 969893771 78786064 611679327 465822195 516321487 779867538 952584522 223196746 194391730 254371487 676744977 521702178 475572334 993494720 465403883 264678471 596643242 14543749 677594858 666448793 12375677 353271028 658895444 573664517 402922176 174087356 592166022 96551242 573287694 312906551 751949196 394910226 247411698 803817414 744778004 711980042 896158037 228985623 330735228 612274420 152406466 792475228 955890739 838264382 603932110 752773579 377342261 770390094 970461449 976813071 57125200 973029183 404727272 902184657 141596427 2188265 954218854 174218665 61398250 550728176 411702812 440518106 193833961 715872217 853406182 34525819 67743389 894974386 739817387 678851143 730330674 204621249 497226592 213666519 883114244 827411644 618984208 747807006 928207524 806215553 414669832 336618405 898530612 533706402 691330100 182216287 627020293 172133138 546279650 133652487 138532564 221671435 318313447 828673857 595796997 571817075 315175722 943663275 700321473 928642351 975966498 418612459 460714102 526672671 757554230 398050633 416903251 782860408 715229408 202344246 626169529 272957440 460076010 589951504 645769722 105308133 976464256 313356488 179677729 156489481 477811242 752063053 420080819 732339257 907650459 162220369 928611303 54161902 45423853 63823984 562243239 162440550 894734022 869093919 991486498 387755982 218801945 276877702 551277901 800103440 558104502 899123711 268397977 66873486 182635112 220305609 283873812 888246637 781367681 377741620 697988277 498924386 59609037 620531685 482333253 770442430 514867236 869110645 250690637 891977580 892554771 126026699 407093755 132754453 394808064 84948254 91789572 40123008 385970001 152762587 769319834 57854771 26401140 151711483 828791201 224270618 386226860 531040867 647026391 867324658 278681432 426937529 903613176 649008210 942798177 408908292 520525504 454200663 238551901 27038318 405286489 17076974 885532888 684691879 224199889 306401554 836691390 466325875 178701285 440985387 359877629 422263862 567450935 931764684 319288464 675885243 709026607 894814730 909807613 880722051 874047021 635371359 958921323 258294400 400559565 848195934 234109306 229255531 790588595 780591308 582535821 861477432 637091996 898074059 373401448 802258062 951796816 596531319 583512418 193922847 528494946 345744876 618840043 231087506 777255299 725842773 458701876 116184509 396853558 210031604 565668601 90030845 42790190 142273914 93281919 410250916 157795786 444914743 482309991 980821930 280887706 194625700 667475431 549384932 578911450 644427054 503340366 49625370 638397190 449039624 636717985 927926121 377361495 53760132 376186476 168027898 514123705 623416836 424124399 575110875 710797262 708693108 810538547 934116615 872522113 522577817 26056339 636477690 783960735 411723826 191882446 142545936 798727234 801498404 851646920 194759710 860706667 731802550 26338634 133500094 558597443 527753518 688765177 853596860 78638284 775231284 666398771 507199688 555011237 863481187 227550536 296964071 891209790 676384271 788827711 146109135 331867276 571769580 694222846 175303909 626232407 223122787 89694995 95321990 693344787 406318332 52313229 408354649 658529337 888296723 915524514 187387940 63930529 507441397 460013849 253963217 165203363 463819853 355026055 53876464 280339844 837982304 91835315 349809545 204189195 865006812 350756123 110845937 493305718 898244616 69366161 667778877 209382428 206222849 390381891 329029092 962643147 998978765 388409688 219490013 300250348 690931634 65119132 118056624 417863364 740479374 121969838 773401751 781119424 349213704 554129039 900920956 134184482 614202834 370661989 842432387 961297586 935510670 621677846 809886805 426298398 857348509 991338297 138200820 760561980 831039805 776973674 68500583 37819401 908105360 61642388 816258943 536849304 833643742 281829666 185892747 253476046 553667833 295011576 160322084 757485911 797196528 489954028 210808504 572795178 307813378 61233707 583738651 57781495 187751661 13091252 579072508 822195376 186291564 683673200 382728934 37259951 927473476 145099392 937637378 889878908 863568387 326945254 281056014 612157069 831837370 847096104 866302594 999550475 862285129 20028259 635703774 334561712 70392531 388348688 586954421 163809011 201972086 604178413 547348343 564673333 700499142 326391065 796217072 258749057 217483205 158782134 646913696 343924259 482882139 601231299 936865559 145843676 376055046 584394956 713996426 830288646 105131601 912347939 296718638 843611380 80389653 711261947 731178272 432526448 598648636 949941215 81909796 597532266 601712738 334092163 146968648 654722810 398163307 10882141 971123296 309043405 589413162 718094392 74266655 279877647 433129306 921869261 280800062 695856523 440493982 379379096 83222448 836813318 739595787 726502588 729770063 100527926 228343642 561355075 290513784 354863795 438104671 871689116 769347990 19699688 208957754 559783253 28662308 927968113 290341034 692301514 72167722 356691409 12327096 77866107 843813262 593760872 545908159 244141451 645591411 382108432 348933304 4715916 554644913 95630045 861099358 778785103 343765192 635709743 308907983 898103799 190566873 419666726 370839519 159205749 350991809 921058946 77921935 855487182 153970811 900438446 627649400 757678785 355273582 526302339 363739007 393114474 30381500 354958656 183611509 878391723 911015109 843364139 347108629 802159711 586118248 191488734 68395967 773174998 911775013 272512493 957273873 606797860 762603380 458076602 632187754 42600808 839763433 302596954 501267671 647544546 579221249 575763408 977330527 689087467 656812496 440171268 106840864 232207993 257031558 296377548 756839190 548378765 552062381 545944224 395604633 34222270 268731059 915867108 212461439 376713966 610042195 501237396 337774959 529763264 991536140 637901965 633054639 475909337 37682077 97538591 78900180 168972414 912911537 281553282 88418296 91720672 924981767 48178006 283067007 836502329 338158359 356867261 265062066 832148493 39768096 136271542 138094835 444488630 323497351 471348840 647845320 555483261 311058396 668570593 655509257 499202337 28815718 599857097 433993845 118310353 257131420 834087833 366151985 703234877 484748533 123919845 561945408 384616921 19784608 928637490 875599828 269430182 333906837 346362984 373199266 299407471 15204957 989759770 88100802 837740717 898091425 858363100 48715278 811094503 239250538 778128350 595581624 277972442 657299269 286275837 510986298 958810426 407091329 561925175 390277241 85630597 920612875 789094796 67773481 127595420 965297026 697194939 106071650 586557342 412220034 60605300 192408316 817430144 495388052 35811303 595393285 796729716 112266687 203707891 714424574 462744504 791748512 540159373 994325349 472559489 808273509 544615375 500997705 605742549 745873786 281156987 797383152 964544675 465500445 797941895 903069395 150240071 791797695 136622850 892154728 986446016 777143656 148659162 704546617 50018409 72898802 844610452 512082648 345982134 893796897 807574770 738493234 925065691 985691326 380651668 767384455 213323095 947545009 216337694 640186649 779010093 78777416 845726918 27557170 899257381 555476636 351495764 256460745 740403300 35832326 409655512 729154470 359428071 2582720 705911048 499948408 126299893 828487929 608467927 219544720 599038315 370372232 551039581 843262911 950073647 553943809 138129618 513822056 431252322 427522828 151199506 622782718 460670594 70919995 698284791 419062776 397395688 121105194 439851414 239690070 779080661 229809357 390085347 530657138 157388363 355202351 141443295 76494593 850260461 255773556 796025776 262025387 991255859 541171174 669686134 812666801 428252272 292219431 643687044 999684128 669633140 90558900 34953499 904749153 912836740 50670914 426485966 864504729 173807991 889452246 549075235 607478724 639304272 244429327 435992209 983923382 419468496 330553370 614689646 294582032 992405301 344963970 128910046 594465482 918039629 685449011 249806707 310209955 567808797 321830666 427884458 714210338 371965610 887148539 144036577 237297757 948643958 174465108 533697768 139047462 202754203 768438496 651175472 816527279 107386408 535889548 482355545 911311986 737059076 834617051 589862926 883690144 678972329 186515865 145322042 902951502 55406901 834229109 929514519 165734249 880691620 801821237 489354719 752441944 626389649 837699780 547016363 462947500 786969938 640917234 370760294 651182297 210449483 107224172 556730459 84666154 930302865 449224449 156802373 915709318 956723286 853524566 667784832 262914290 992215631 563454014 698619511 855201253 792095293 234767644 801929349 357114717 130236382 73248499 483658788 581467197 751520257 182238510 879854795 383569991 302542445 274314465 920702018 998496868 224655610 544900486 778347059 25289010 767280588 419809327 365903211 502298732 751060003 374084766 886293098 808847559 772394324 781623078 153349285 390888746 317703907 332343212 396904332 57512725 903538930 209976501 868512408 559901068 973689660 38525958 515208879 169573445 306045648 100440036 580314716 12689757 433934029 506918451 376416429 764455203 152621481 666540542 623678361 77008602 8265434 490196488 820993291 561202943 632630358 911188865 76124992 398821982 371864867 616020952 561583254 602494338 325768557 681399092 799685434 722722532 819899671 939857914 678424171 58239681 378489868 996809852 571215759 597018263 711375464 172491802 643799260 485356179 151017328 772571848 41983605 975004479 686396129 796434209 458995586 215948685 504000356 179373577 30409573 999372733 938061738 913120549 544703054 284266160 210032814 604735644 263404089 225226141 983780840 128544501 119962465 349012570 942850833 61258606 478649055 242493651 223492330 378587590 307937983 272637537 189562292 679509426 658504111 215919429 334695981 182239721 346660226 925196346 539887869 12009484 636603543 903176500 856555795 702394970 219678247 204629234 287387528 117331304 352060253 34556042 618451217 159799183 544562993 440990952 477496620 602836710 822094369 256201124 618698752 727222132 695366643 472908870 449851265 773457878 732554800 159920550 808092702 890808492 352571894 187844331 911837706 709395997 607870807 956971353 351025323 208165469 562365126 891735242 988685106 864929880 693990665 117385327 296869634 575516000 41537145 149252597 479702724 541006258 57427452 276818084 61465173 64357830 63078237 266856421 826358513 601999445 234125781 752871746 951918515 135433483 40594429 945473310 492822147 838866445 274500517 376633943 978584165 483483822 612168439 305016044 391729866 668330568 217860090 98942411 197498799 7489582 942337443 235932803 315038275 946737034 62536639 190125489 807713312 447295756 379394670 866741241 939230877 658765867 308910904 831368379 499596805 895918342 754956789 661481654 399686506 181140546 596237850 63314600 807135673 128459893 972749174 837238816 791128222 849366710 699648929 821113197 74142942 390156088 178565948 466619826 474444044 605509895 272278891 140974719 283162212 242658388 680958042 7391338 12671440 467701889 130502512 293989004 544380830 222147711 868597039 545366418 826777128 594941309 503413648 241093852 976442858 359850411 301005149 991650759 889247398 553814226 509150130 978296062 907857279 99815363 74435340 306296587 143268568 764834142 141802842 257066287 440378963 572143872 446262558 705213415 955745216 981358878 926399140 397485342 492315270 998932235 680997768 223758638 43327041 145972127 224330533 751604614 106335894 572982860 276330962 148768933 104093032 917239007 423978623 72873535 280236448 700648425 956438751 466991168 800817590 397130645 65927147 187390022 515275769 905331175 648349634 320893180 663308905 31743503 554307381 547647742 168383811 311996177 110804335 595625917 688120106 557926943 347040500 598041508 270910254 928421431 342417527 560907407 880183560 910521350 35253634 639495617 658800083 860200387 145863955 664891693 983492586 141967225 225144898 310813365 918927170 580887957 293645596 923432452 78030909 158451102 137514206 826519752 372951406 195418699 931279360 483878580 543641290 913610434 624809501 58500382 480501564 642999047 907847125 700107028 902870041 314032782 133882594 371721140 445457341 197087299 676295852 122975604 673669621 636113502 839503745 957677375 837751230 898816113 503872629 268411326 410429671 502555061 31073256 161321695 733012527 389340861 591062342 973191008 841440939 744589125 865248449 713462020 719826961 417916795 71912885 989689419 461367406 177612754 373913992 784321351 982475678 998582042 898651114 957019490 140432191 695474069 478107033 101773903 743242916 305794571 669571809 678285768 412358619 347477447 285259753 380932758 109910386 468439843 243473975 621025811 82583443 290426799 58846749 773922078 370963208 838421509 63169671 911451520 679995225 451677252 909282479 699118289 205909484 457212313 801987562 997340483 569566243 954952541 144942224 388621884 356463699 465446024 211337109 549785785 455282511 947541365 311398640 492510958 786192755 903724919 66848646 392199647 369406321 412505852 490838708 411946880 412474590 176440486 321614748 316241685 58652310 333623416 73885187 904105275 480279288 841881287 321287706 250460034 68358972 4471366 138294748 920896290 513373376 949746700 992838129 96068751 885943842 420442050 152243747 263056902 940583423 656615916 872476737 171419120 276898922 165220614 441549815 73003722 242169709 285768974 919901261 873352981 423052623 876311368 684147671 875668304 627090299 40155358 598031450 161607981 170018927 120431102 884324497 785133463 879004880 327472012 910068884 516140312 752072413 611875529 551616894 519728771 930078952 172691282 490826522 371157899 777952948 204173255 890867481 674451218 69222287 544335978 56520837 391231114 586645609 108106413 268644621 911428947 627487858 353322457 455728126 471158093 664500215 325727469 73878963 573699216 446747044 371506730 793352669 893850145 959482401 501113931 271901971 9603452 70028629 491225661 669444874 41421991 457110078 233193363 879684594 566681626 826753219 675391528 815908356 299184262 393466375 921345586 118230941 869456943 923886965 50006194 92571902 121993057 502543041 81591653 379202578 208613474 387866696 434536088 914210485 423251890 806220754 18175815 226158604 616523159 172310699 279930285 779991013 637541349 269984072 548400407 560108416 363582496 900855376 943160861 692238391 572549548 573261662 564184347 979776448 893775904 548748766 19194908 156224041 831872709 853051382 746855362 642581490 787774693 324706473 409055264 3437129 616070209 997653747 495024393 19157780 377386331 429586121 865128363 91498544 279269545 986488742 365643374 990109837 711826727 942755356 416827782 750178344 212097108 468708661 85539311 548965438 188029536 943497268 921275070 653573933 51206493 285323565 671484811 351511558 726650172 183217132 877718089 339461737 994368895 498346406 691666455 307906383 877839447 666328733 459992873 158610952 894757920 441069096 80049649 902195041 156663239 71425737 969023894 508112421 750615564 455809501 796487018 819311612 286992273 370027285 779193914 897408259 19781866 888800616 978968779 851726550 45205163 447039702 85400523 237539639 449564779 244608431 219536902 105287490 994929024 312074328 779372349 835173010 913609251 753566998 282739739 557959340 837822089 156605139 286787931 385212511 367460891 661000013 743767091 774603513 502884914 406050578 73016893 962851952 628427938 195301485 384636378 853464865 337095312 267273505 318755960 641072644 703919353 10523327 634636374 964885733 517308991 91075039 689981199 866323964 529645837 196317882 624264202 135514023 549682276 390917172 954703368 365929469 728684086 235399695 736844031 300104209 263146738 933150640 352329418 2197387 371479141 360161740 283401625 983848827 197881983 647508849 455436698 686123626 573423480 640776879 322760343 205760326 211102855 827379878 834754018 505435375 371616540 173578389 969034586 660608150 467619892 296279084 980547439 124825759 674593443 133829109 185478287 61967764 712845879 979340957 777889101 921940973 124392094 857772407 802460330 856190694 209393033 769675545 798294878 679569926 263719839 435604813 240331250 93809013 552415201 943091734 724391165 702670670 8093125 764154585 770398694 940521016 200509626 242775145 745092258 930194532 305594954 862342385 658533737 912403066 389288695 587369445 240699042 827200357 34956030 18341441 942250147 374658774 659689553 239395859 64589253 981158635 956568344 394630033 98836286 410473539 813213619 759519855 428320859 483402774 148853028 137290542 622474965 574113514 715446374 744344659 448376036 756977920 710171951 308822076 997018928 641045221 160464685 715969883 968853266 221521391 643509551 66449378 427992228 236091476 184178077 209296812 801467543 14982436 513557307 217858989 500782916 714261227 452662413 802316023 109658731 395414389 572189759 156568074 841030362 132014331 513526013 127818630 731379687 884806430 412032544 78101911 475714490 103403374 595469897 124389955 505066209 354552466 514574781 840145165 804749467 212080038 998332321 872786995 362419103 630111472 382770269 543189364 21637134 235976197 833122941 908046759 989089017 180898032 321518434 392459019 778610809 144495858 861299957 751091669 307499660 503220571 327747076 167595152 926897894 668686501 504301671 84078981 419190995 977074000 749318678 479207238 786220381 606692561 986180435 746009139 666571096 586294359 208017618 333098779 495540532 746264519 428741212 124723153 947385121 646366327 519996157 43592305 650909932 565134285 102403026 43113010 760802979 505254161 706974201 305608858 410636382 89319867 811710068 192612351 539341485 472727998 577041725 73229550 855862216 692276978 489823563 968459661 683999943 123261702 988231287 972481666 437360937 263783972 323116183 353267039 381946800 637654785 601062741 132626743 121938571 162687320 102824131 6778215 685664217 465361917 989965113 28850614 293333845 708791241 168420548 63428556 549364307 901029129 865571577 477974641 56202647 689572522 50125432 226575697 271681962 31178018 938353387 405525505 736337792 496582872 924187136 845256386 89792511 787470705 193926489 803667151 406243358 129138359 767112429 829033116 163826006 308534038 938892813 58631550 847762272 604985020 525877445 946358876 984043459 479529609 457993469 284792999 22729697 672253511 718770930 231155732 40898491 71220453 451434879 300559420 742027467 469369356 907670441 582244849 459406203 684675190 859103364 750362874 19983109 204215609 89127185 354034908 951502999 960039428 306028722 632396112 620766100 446592163 851238885 768392435 664266090 859178628 69945360 512256981 840691724 426262431 974976584 256349559 569593800 334009779 87609630 674160072 587356264 379483762 91875591 646698459 345254315 993859978 52535754 139691238 868016036 958264559 747259202 291415685 546751547 462374236 76421617 38317498 895455521 973669466 822653437 943478336 103388780 790826573 920993980 67309907 832712429 498152775 623249460 735451195 418392910 853286155 565950156 969605845 609041321 200401492 647095307 559886976 808311915 310604704 520886017 746408222 141574728 656429478 229736991 828933315 825627764 612340805 384562426 509350086 707747105 533418535 577293273 644456773 817591658 669244590 361794186 741517647 560729385 953005220 497038586 462161098 390591281 461657480 807849661 887384415 381245167 204208359 964317436 890582126 473637343 687962854 436070287 863508391 784363761 634116697 519356995 598058706 713514099 284905478 901797335 521697591 699913997 517566420 26578301 142077264 361748266 123339964 956543142 438761045 548201640 829168024 364881664 347775282 889339917 24786182 599949109 912077820 623012666 860186015 870794021 366544069 443754973 4438268 531523245 529436284 998280626 961197102 998188305 212806419 504805746 186428094 170418905 946505370 718135299 14497766 666008290 316219641 339440199 173522822 624174016 140158077 302051510 972043214 119377399 189189366 363990579 682738978 311871024 379947241 814111417 573397801 489910077 73696599 279228926 740887172 362033321 688013500 75278709 375337616 97937292 613551561 865980975 275588147 742342568 655442511 604800360 234617379 424682163 316441319 562593816 542244928 292177399 105372645 304690130 74592804 913942636 377218262 496286591 818913210 211190202 28690860 288774921 229242140 675698872 195714525 109292557 128399250 708028031 39776950 408363029 542486716 327274306 377515331 250334537 121715114 310949018 669794675 241399649 863179364 839598257 102147131 642504395 621362180 681167669 664952949 797616341 454338840 753494680 122399358 185609277 539145668 343321966 165393942 161042581 532080035 662268820 306158336 959338388 297330288 121990408 812842297 977036737 476396590 118847211 806352583 685756058 772011041 644512183 915611661 880146867 330982883 662372132 704601538 154813026 951795046 807340295 516853752 172809929 606836927 747040481 729032118 232728005 803282650 625329273 483690556 382362016 745309526 339814461 279812805 232966610 516888614 463439967 69141452 855551898 483365587 278529079 567334125 524653390 83629528 85040929 663375746 344635231 600702560 399802637 217586029 834541619 981166839 135058371 5253984 678674867 791588643 481361769 543302387 654173233 697833277 860797116 406994272 3079474 103943191 128530913 83940063 905855836 779860384 870680971 145474281 911741190 65865980 893689135 975436967 606871395 324956199 899279720 543340532 624395768 870985064 39966566 256537187 854305073 752463524 850571111 302422157 166648819 49645729 528691784 318410922 259622920 384987426 389195643 573341883 803980275 844929014 762726496 796635770 418654664 943857033 261966908 307537686 493628485 997265316 307566076 544284613 32238383 817277044 855633275 323060875 978335914 771754816 311870407 69830932 260868266 564156360 211175824 750730234 910729838 243159108 523565532 565903857 345745059 449391130 710116294 627036945 525409231 979452437 822499037 542818986 592256150 651199739 588878498 815091710 321680174 709519257 958625471 634942939 489185627 711356964 264531451 201899313 771997476 19618825 299016818 220657469 312725306 975731058 666260014 116929771 169827435 920223971 674944874 676831569 706095740 24525419 983946850 183811470 201233608 299292005 521318722 846718145 525147128 759527395 101030559 936251505 200321807 468520203 831658354 440974353 726838179 652948607 461846325 744879594 217412887 843636440 864130649 619484563 746376999 398036762 462797299 461814158 524756009 467772415 207101469 28424901 675903942 739601907 101830875 82200968 413849487 39727803 621435184 860751905 675086914 790316987 695817702 796622634 921079158 126382912 5283984 400407398 927983974 545284066 993736774 677449172 960244706 941408498 636242330 164225240 738064126 940828104 291827546 784405967 101249581 780294458 52453291 322327281 125839908 105268443 120434898 165602483 161658074 502272489 473005692 391280268 835767418 519064308 980165125 344847713 324659239 5338209 799615585 362330546 447649897 940698887 182244657 517054428 297197148 133467953 585415027 32636205 424855843 322875241 811810969 698153136 700697560 404219830 152610820 789336986 152508650 913502604 608907127 469844991 328072952 418065822 758557148 694261714 312695663 312109326 947195147 544156245 811019457 404648508 805198987 169415974 46537967 548728577 365420419 175427487 271175367 188678173 187747617 18726557 830288276 951672848 338824612 515936123 477001426 948734300 626160212 669466365 47843193 96179698 158833185 975588724 673419776 742031905 616870085 523714139 228045289 668425271 927454047 933544164 655619141 765018736 395024889 872758170 947637508 452433945 608092163 808274996 819168050 21354639 939466567 24198498 106979100 545247236 735262921 385131336 162299941 907143380 524453480 911951632 718664339 601168195 608334913 670492964 998038321 259015090 980555672 618162907 533817179 733034181 727221208 642082909 975670942 398278206 15918568 888578643 62844389 266494992 805424611 826446084 393845474 192624270 10836655 79110526 289150169 903617275 628973748 503509392 400362624 268830807 74147216 43159943 472591660 148244890 329355996 371776138 283480729 702674065 661545015 181297353 31376367 678862852 87979200 755912988 981894312 205661508 327581223 255458287 545272689 590511370 62134138 584687485 363618092 176116095 210891252 810579568 550185868 58734373 298921457 273955852 718748840 325976407 413092109 463826766 161476340 426734627 287489884 699795762 265096276 707065273 526563325 580124887 547080423 779369673 642294700 244426075 414547043 634928176 916565776 7050336 139162186 817468680 392699977 129256107 369686163 803009562 923104174 182025094 305545077 407776477 945626197 230311979 111482274 422381248 121757511 272010730 845924211 770426608 730147445 44644644 364686881 332512399 780664847 509053198 212244971 330267565 595809513 629307041 416825948 471389158 263919606 532523922 967316621 446195566 255089054 674773855 95323485 830322000 199461757 399078879 533112092 887582754 69334967 256174447 418118218 173581587 39583687 417288241 350431935 604139816 851653846 182826779 750777556 841041398 623742410 399169809 787441154 803446253 274873777 498017372 182510443 723719238 984327164 286819796 130515473 352406600 737736550 915922990 616505495 385175642 840021297 406718281 919241205 249543405 583526386 952344462 66328755 522005253 807519766 384581579 429948614 544701024 509307084 478324321 473825946 480322550 207331891 807666841 861115646 630318269 400456488 133149589 361910705 312419858 402679684 215721169 990129766 447824378 61941356 365306001 655888201 542560570 174037653 734933043 931480889 98854582 578094278 972497240 165832820 437578365 570626990 455048048 282908732 464529417 267668553 16956021 958451691 158294032 434965459 112965414 259767706 962469068 297560793 948869096 445451217 550637885 342219011 365775998 780309090 244946277 383035541 10966176 389540657 965648092 675097559 836326265 76919650 790847085 861416299 933771572 143428639 21218370 120076389 970567767 557504250 725711450 135713041 737359624 315719432 701540575 546681193 340474489 633285283 202040875 14033073 628306366 327770422 123513950 306132505 507348738 374303605 516017325 169079355 499032961 637433494 655758947 571499171 508826059 309022109 552388926 253487717 634571194 617584957 286801061 758262069 117143407 16087972 518355425 903507072 44902385 469525243 794705662 827570093 789340809 72918601 496549960 567720535 211448056 73442226 255941089 965253980 190763527 4416997 614654643 164925861 90323864 845806080 879204961 97533471 519447276 484752118 983298501 346708126 684261260 778801675 579725173 669474505 908543066 635308999 269995826 344204939 522808666 913248191 160615988 616040730 762805696 876386888 28788617 106548561 458666655 467663545 609272078 985520187 757133990 399205546 429721774 916123370 751016347 344467861 528487877 646631735 715397160 490206979 777868011 80504793 755951192 67631570 568694455 453808912 629329731 508922632 827169492 418916661 22610535 488861768 947164956 40364246 493798783 458964997 855762061 241462405 99648522 335000555 687130263 679047282 224662319 332183247 122706468 200188745 63648509 168911971 402302535 553878500 561018405 697661187 76283270 889478577 687572405 32104299 266020707 433623685 671963496 769254310 624400586 589908281 262078192 801041366 127900475 815606481 710144962 630572211 950401470 498825442 727412096 692360212 434458060 677733505 760853815 473208865 555814175 261269053 903665079 817276023 242973634 227205303 198852037 922735925 963331491 854329925 946358958 610005728 870915510 302889025 62976168 295241928 474765649 68077510 14883138 976800797 371558814 89790420 467692349 22029990 23533271 366430418 996941603 487743159 860075631 626566746 853847248 63615600 809311401 320395922 731775731 490869240 277371005 97621497 915387257 880284424 409062824 860297689 673326537 351261699 766977216 766043283 655343136 687152806 197744692 699422085 801411366 930970637 182745434 552866963 353592661 658130468 741382581 319104428 351738482 617802527 256179274 493808723 218093941 79376065 695830372 265769433 306609221 922972920 44618564 147131132 794512218 404535779 442601072 995853130 915365157 682017518 733769208 434991598 505990717 643646407 288667334 593847807 573411354 455689084 251680710 334145269 288483716 794398498 771085408 634222357 890217875 940445499 669367040 566563863 169292220 165267142 257039279 997905588 252858192 444851518 663080814 772362108 667410302 949130964 261387257 121933338 956898192 122163131 512192993 160721 451732618 157175789 655158937 726659694 539669543 475434660 375963545 955419951 254514067 916075309 660611369 231805516 386804571 309288308 521435535 4067132 464252665 997628286 630229905 472394605 197453282 264452528 818284002 764332513 670552013 650637225 458134742 879814209 258443177 326427953 394806535 92784953 13483968 736432403 320149106 876221947 505754551 715652470 612407184 70494353 591467641 362009239 446706797 513326988 31060524 555393863 861060391 39914024 11643514 407684895 203765014 122913723 992432145 707926435 467240584 452763814 265483049 12409765 378528164 802033337 927527942 856678143 904111041 854287371 150000429 294692556 711808040 127032739 163485330 391985587 985930345 799818211 77153818 36585470 353347421 272700021 81415427 422225153 37442130 234264337 322007598 71290309 494605841 264172236 902206489 69980100 193320292 723348842 257701616 117456691 544112098 136213738 121750950 159669610 190719589 280629083 996124010 431296210 248056982 69570039 678169026 337495780 394343093 954228655 691780800 380218889 972392775 374989671 493856862 685053428 985698395 551340302 138838206 472101867 984087900 190290196 294779023 491781283 267510948 365147262 83772578 796885742 600677704 215266699 424308921 659792035 581525199 490084916 392610857 268711140 851097190 886103856 253492148 967368631 160881616 940636371 538297521 283165886 175239760 341170129 403827627 857666562 398249920 675269797 205885714 731392525 406171707 558551547 625345451 260650000 695110687 462503912 174320622 192143724 95416449 393140574 250080428 251036405 301192342 926825841 450194341 980155071 307415575 363664223 199218096 221557330 229270455 841391105 132870196 773505982 246946205 78724783 945888361 934054214 536891645 745623320 935730541 177027417 590497050 660734218 373331499 251080870 593921947 501458373 236325436 382324531 374484495 642717195 199453580 453577327 380161513 695056895 619447646 220640386 517096692 14702205 524590879 472065501 683156066 866228471 716568205 590984884 850699349 502087911 328136094 438561647 369313651 664113724 12121036 117084324 356932294 760329372 155668270 790926512 28119976 337074946 992872562 282206865 951994532 628307129 710031994 652202934 651722616 298703969 811665110 782724093 380911871 359376322 589861028 421242485 513951482 459852084 952985661 738864103 93558720 96503299 243530508 40568751 559199062 651544607 958738117 994040182 258979015 960826182 803018784 762924170 741424012 342847540 718990304 991979835 448526432 837708585 102997871 52729591 293558392 341181298 313078419 887392003 234454045 514765061 443822708 288026915 908114191 257508455 318287295 117824479 496792244 913618214 939092600 94478088 244096504 874364232 93057841 54102838 391139156 533069460 323012472 572560962 105461890 74356534 510706954 868809915 242400295 286375374 178284529 409956233 737591470 230688579 776416597 704614915 900920211 243635249 952120994 73965609 694695814 858857169 300368636 387411798 846668473 89772548 526524006 330748835 631806559 23405323 643273860 99354358 888192107 716044931 378438723 460729917 347007714 485455852 681396649 882237930 851028942 434454924 690045322 891666077 126759132 794548734 509291766 980581678 700662209 119962652 635001102 136548384 547088013 268954095 860003588 326545343 525847496 27581705 604721589 496717344 9976277 101944529 769163047 272802184 239323624 94617253 363831557 530048491 568883213 158601943 525915078 246486682 220083529 943404951 885993207 28201089 198624902 852147180 452775554 76885009 867412830 84386903 555648212 602142516 953762716 143982243 702584853 757939354 433893193 593188361 351201150 616852916 406962987 210596728 880825405 553912845 930717329 552829700 699288558 836262431 757168453 631750033 911441267 369053289 666636475 747262528 768610096 525406194 426633625 991053945 842842252 628791806 954179032 304018986 844259084 6925992 272870466 418999748 497916921 894159278 258700807 716327626 565629535 971890052 897761086 545077439 909990029 647911071 370795652 400883572 96816201 831162356 878841254 775364158 771889527 456136773 644212528 311605014 562872238 835669669 669374375 858073571 175418289 388408439 508859084 888989122 875806374 367919388 791090072 215952411 878346574 60703939 55006020 793251296 677540804 443247419 847206710 268071516 820428128 609599356 638240057 299183811 56219098 454232441 883552477 466358451 474600801 222719524 644205523 314312828 791318256 526193924 683747128 1338791 579667115 378043722 283679300 382367480 20697245 109927174 261954993 954993181 14781177 926667038 305504101 80518201 7325537 878268883 567151319 672203295 975601170 521719434 261381822 735634546 428240286 421648116 822256095 477965772 188094616 763431306 110652762 952674922 351773312 355126229 289048460 350638161 401912737 190657212 869482353 862890304 49094885 620467828 744482690 643566814 131672231 186384454 260196095 878544628 68295961 711018857 12046600 984691055 891140790 228524586 284722538 369352680 302852161 755727233 515614002 250203373 969454840 478619961 712601896 395217061 387813065 812704407 525550081 395861380 912043620 343906673 741938095 975005854 500000924 628983204 955913187 562849478 913388003 434635227 626399171 342045433 873244139 142071966 107552106 509038933 309972339 964266607 634298341 97584440 569295825 582090669 942229927 674602077 859052226 896028030 884434713 65595216 241246454 454403209 42415976 844189398 286897878 742091343 283463323 280622237 794922733 78440855 923659738 907287041 591370417 897069863 754653012 903858819 916755709 806097292 398219333 572169171 389813723 101134593 643989476 442482871 271978205 794882536 511238534 405734807 695168808 228637491 785044052 665180066 773612616 434541483 515724707 624670924 936956911 791170928 757107656 411827820 380637428 440328129 918583825 579003296 793045139 564257622 788068007 23348668 965002868 333863424 237219870 349336051 701079524 118761396 500108932 242686457 335771433 382748599 968474517 407618858 993315528 939166071 781805855 63074022 956885747 839633526 502074339 556947747 570248823 798096001 896457884 720699488 298594668 987436009 770450332 54532078 188240842 776991919 849676304 635856909 91057486 60684153 617953066 521836011 74363428 445657664 523648043 970061715 164511397 969093136 44642921 637617657 812180323 379787397 813585535 309723214 192429927 140637951 432912757 7080880 214101895 481858467 441281671 57024142 656890815 469369509 751365439 685806519 762706427 175510749 724537944 88791749 748891075 698142301 624727462 290338696 748304138 505939518 697766338 130932283 384617421 419345793 242831352 807163199 615640296 747861082 227981545 967136401 425401713 345806380 813661267 796357928 317261148 130598634 137169357 859390157 379020512 446858217 549495414 376992163 258272081 630729278 572024263 431555287 46189938 644686834 570753931 818323916 602198326 381067388 227226907 459050516 229999337 5460821 507421332 328578656 932834103 638661175 274167402 956152237 646294078 922845261 748955602 645850543 441144933 651431796 390689092 416636842 602617518 960612282 210719693 498690150 437852987 163037499 422010742 258200965 62317985 576953702 365523625 785138045 552552992 566668712 717819267 764821478 323981204 214876582 701086695 741521431 388143402 200780112 866748234 143743627 409321909 681664924 639550608 191446079 515414719 351492069 685898628 627575508 225379518 516388288 538836708 796090129 264242834 854240557 764587128 311666751 47778595 898857934 842476054 29481687 603572501 520133462 132734738 213066001 997899082 242767427 787658290 398163331 21689442 552792220 616760106 348976051 183225373 706552358 600528218 603599763 857337092 215687973 798831140 88291067 942749560 141648296 481145135 756559018 601769648 885411862 477670263 162526187 739621475 107479839 877157979 115726540 481347017 902999599 580960069 424854472 112550114 440769753 746970969 138221810 482894131 480529854 587749724 989506684 279528201 259197575 46561120 760966875 672156960 482802893 611429286 17787935 192627801 768006338 395962205 22328406 601413310 944616586 155539444 162446312 732580179 902362271 141210256 405764062 420902556 650395004 728343486 565529845 59712293 609408272 152704605 460074419 841713326 281842879 211237357 945840022 439209989 330491261 503619842 43431900 876374436 906232232 779420211 568693370 569231409 206500528 812927255 843672121 710223895 363191879 675855918 315355848 203760486 52373717 583062095 374161813 682427961 842135026 259523353 702025035 401621138 629102037 972123449 389307074 35857117 416754764 504225529 31978366 661459003 143508069 636439429 929477798 138533501 86176641 279205414 614706788 229019272 9869780 582840934 887693699 968778333 90916137 279572910 992633846 948752614 149990544 137781868 36678200 997249898 79063030 643911207 649172600 334948659 703505583 305182456 591822732 323087208 437419456 557589513 960543886 832107937 644804775 559292862 15559576 182682108 761770557 22816783 982445056 32316003 805242073 183191666 899415980 302166285 716697076 136253057 15873714 178519729 554928121 119121864 115344971 204516504 957671975 305929908 960986837 720525960 73869781 640681600 563511712 175113967 544465472 884337249 719452034 788741555 258803884 394995745 215194802 869185219 559742306 561665270 534973439 455306347 775232636 105891381 674099139 353979233 533416236 585326473 944978154 874718778 389312246 935255193 281679523 411108738 536076119 502923037 487253052 98526122 694888044 332678760 827389325 155883139 589872268 574925253 165110827 74492182 793291000 163810350 835199771 598356325 323139925 33531690 547598038 367324469 242467158 807122665 612679677 335999234 618575123 326305474 435645393 214929449 4891624 509960123 902446222 330498125 964929517 29276406 199919567 874794493 399852603 259049683 441095987 768767650 6864162 941686199 940510276 394481643 764857456 516807640 24085181 338310099 779097728 308934028 837654105 47842424 899576913 39198109 537989213 659802447 846537821 564380972 636556400 440655601 16850117 457126978 788223105 475191769 259127400 507839547 866024885 30291650 143119449 975463347 171758475 740783443 704232241 828832413 778024139 897110650 241914615 727223546 109488779 851379855 707179353 216915072 38317201 570740947 307555822 240330909 121322307 526418829 863467168 352573643 800599626 363567248 429963950 411660212 965101901 905022311 749571821 875191456 919434921 979841616 511253192 782996322 407882518 331867796 289178380 509681759 976356728 782176993 892777748 82415443 79965974 723360028 271130535 712977372 767361761 674959984 924607552 474508829 177854377 111057335 324917022 196179474 730103327 898151474 348852751 34035068 807757906 576481223 130023355 310068297 296676155 526303001 619204616 774978142 989300739 290488586 308435453 562947033 642452282 838989276 455302003 906668851 606714207 526839111 43309342 42114603 751154897 728841239 410110090 263211361 258923287 196655527 547342821 744659586 60199247 515669835 185929352 845711236 633407134 803001536 115552894 745448559 683263044 676324580 421504981 947984763 538195990 664939660 323546013 626268934 376320111 484459716 46052149 304367543 783851938 839047651 845069670 100545024 401840886 832058106 35897414 630000195 665717578 396647629 155830413 485169028 202222043 749642727 73508552 289987918 912879532 494849272 786439486 830387606 538002788 406617790 154946906 245702283 644743559 944389477 814774886 660254022 571297252 225589453 106106370 880276678 533540553 487125624 482510376 255678920 337876826 697564517 94436183 520571098 684302597 316510347 678188097 735602616 825113944 125366902 779011031 552879011 138556979 191213502 740741565 561795227 343381419 386824548 198604581 85718369 485707973 430403759 124928952 489849781 702818934 885265475 325478060 770836292 680632033 446311302 132780529 412022883 855622742 426627690 326182735 928720674 642929955 817093309 812583986 913021560 910900170 69196549 334348443 447470989 661475786 984283998 336266526 945308206 311525725 432741273 475411935 583495556 582207364 589372447 993637181 625998462 333085151 842104674 504877894 637598887 529184764 293871463 960275266 58710970 832981253 979264272 122075811 986270231 559489845 634847181 761597964 713329649 347210428 579487340 364290970 484523247 783946371 152619190 991456486 607177098 614228225 910763052 770669540 45724025 528598789 694044544 340579007 312098590 774940864 104954802 402754203 697130951 201736362 892902012 236720749 87886610 314257756 25638739 971944975 474182650 465609683 347402380 846582800 991964756 462605275 689004051 463305613 481972619 85524962 183844072 754812584 301011876 215187539 580844523 692788109 795744816 179643173 741359123 405151876 86760069 964785783 110030194 593736455 164604303 71699098 789063633 572841790 908093342 807106757 854470807 79454179 152508952 158642026 22839740 725782544 520015950 123261956 706572395 310978310 438108980 924222649 168106525 425991836 930968666 222987136 48241193 627196728 907807987 402654691 366817733 705004948 774758244 846207010 561364009 373808343 340322261 61588073 717623649 822810860 881470135 614950912 173915182 870200628 168376525 388840900 311738638 901663130 389131661 559479699 831923957 255839865 349765160 85953153 584023423 19257506 282076317 779768597 69885367 260616926 355265313 380172214 475297936 770677633 858199946 564557408 375463988 947872800 931046998 594668843 261959064 91695212 149519570 480912193 984363972 473564511 890734309 834930423 155861300 443932730 148109481 859702245 534950802 985253492 584577426 766899092 46977160 894798814 319319297 781616619 328894102 795290252 952850451 893674960 87900290 133414982 798955158 607016442 957687137 573325556 738268714 945789080 463239415 908645223 886312817 307446656 660334662 304388646 913888682 886377642 712254689 954559467 843995525 484799297 7750452 940579636 664756292 255178459 972276344 903479744 41934578 855444411 164953423 359275826 687996717 144528860 801218904 874750261 73057266 497628248 652765981 298432448 584736347 465830252 229524105 494127088 703909497 51201927 42004679 91092133 278407601 961817208 975809484 362016687 765209692 414090721 575587327 579444979 103376404 157880657 708380330 484981029 178012079 13516608 663037734 512720438 598475389 292835716 871647493 856769853 332591586 30916530 7706785 307363802 983561017 381489268 556379017 423528010 436236819 103296714 483931188 482054405 69125851 799776059 656944811 519386052 90492552 322993467 500400946 436919218 534718659 828314580 420189049 34180879 42333374 814029250 329015945 335427277 562356256 51914680 67117992 44658417 113760530 627044651 222803311 398833945 59605060 241262499 752934717 525856818 518862328 153616688 673802987 419887692 142310439 830840621 376484927 844336216 754406115 598591079 61168905 831966112 252743081 919548332 212444873 214602458 245868259 941464138 586048819 910670580 374588813 462910006 805739800 195612396 409706736 305662213 452608798 346172469 969140075 430831752 881159189 884975070 638032547 681814493 383818279 675365410 511052731 656080763 625181906 767436052 525164309 234718508 851349431 58411246 964924073 526768923 377755811 865965148 487012522 261714109 721422381 259959317 473530318 858717358 96534091 376020114 754336892 673239201 850065442 991707296 197104642 293661587 681884543 393522531 569202488 34920712 596141299 866134678 779297884 296075831 569561455 530319755 647217628 977920354 606707683 850363742 993098015 202103274 869066059 370724980 79896402 997044391 626617800 916925780 303079733 412629167 677520605 447753434 86855454 311153502 767684758 79418166 921575261 974457911 425815812 384351696 787595771 117419756 944069711 535226396 773012247 999707402 703985720 237447739 436073 350021544 811443554 614875855 338630933 656093969 780256448 539696707 616233010 627857278 527640556 729686046 356706661 933982721 264636278 108465883 835337134 628039646 89491973 958640510 187742746 217785467 3288564 415885647 16434803 204704030 142509740 573436869 329015621 366801608 229194524 491728014 532291707 793499755 151784163 758832206 598791954 145333177 694051591 833939748 955204865 710460602 840472514 5236363 785505468 566003385 643610136 712528053 749368588 114162958 329528510 142656417 161831886 946046262 423133989 728803583 440614474 19341193 846986612 599875688 700447129 109079991 486172587 701838367 548221766 199174637 257627583 413576842 14923975 519934496 349781810 1596961 310687296 912275888 362694869 108098034 246771720 393412743 63083307 253598556 11568785 834461962 287877714 128264677 665115155 430056062 344546331 318935214 292376368 96885733 188595388 913356753 177332825 244768723 434819421 96895440 510909639 427362977 190980892 823719549 505774515 883808881 889843435 526469793 571777731 978130134 538106936 713540511 710805503 935616394 578178209 721994264 355166196 407350800 795308378 582218266 962248671 429808167 212862868 979697270 737620461 935939261 699078847 643254585 707089062 209464901 53427630 83353587 917794620 341251123 188639894 988339062 763382827 78667420 85025754 853598991 626502101 857419885 471652334 198994671 421618014 715947500 831858817 919741251 748284671 943528787 145073778 571015281 851398394 879582059 354232523 787535769 381009088 766441202 928918653 718503542 884759696 284373412 980475797 841956734 254046001 571615752 564376261 417929836 771395377 266051124 327541505 977325107 796543615 620494486 115021249 911607582 172614299 788451341 926225408 847364715 636255352 926041472 385847907 452628548 875321986 985372915 542833622 250402671 732532708 811940449 644648214 19419866 843046145 235156142 481829316 585123554 375891934 853376017 779981749 39341912 863386888 640956576 581695098 102114952 318247083 930929360 3306954 100689916 948629494 657459974 915664524 762490532 751926497 951367503 217160861 757235918 565101921 622928529 710801851 153752159 913795150 511515124 188411390 556870915 764469146 468288385 266004470 123603437 862761406 642238685 645204381 320288762 675766091 654852857 481192717 508800699 4202239 650873757 493223722 912645715 390149056 412816344 937779253 807032515 5266695 213419577 887644323 126580408 719156681 220982351 70937424 420007163 21524704 680377592 651599861 564779075 109939687 640114192 526259799 167980978 373381478 540932782 216029747 5038083 509678630 714585634 892407258 679171914 770146645 891827925 996994069 157973435 326529217 130727526 148074110 212934390 782022167 895402050 329149391 565957177 428998404 880524866 348114613 642884743 633775285 648106202 336294404 571655981 397277258 318151697 479968903 133534637 544548096 78580786 738356977 685035825 677695221 750323202 757009748 39596474 632325035 795121746 495392725 428556192 469378390 168833203 167221212 471382565 949112296 995537195 178364547 525260214 791379944 763973204 252571557 12503273 725964418 453081056 419084541 407993936 883856618 78513495 310948906 792639606 860281168 845355638 422581445 600178306 842326530 563322034 922582107 146256929 555160221 643431 558965741 926926877 147833548 37636553 873780886 758276782 832935630 883228250 860552702 620744859 793745408 880257526 540312702 555097867 549888101 84000287 877110613 642288017 728467735 762570631 874750927 267333723 917698130 474175725 392118627 208791691 979039966 562570654 755313942 151621766 651850242 813285327 194805315 195038684 196635549 553361166 470919530 797213203 767101656 279360826 382001481 491220271 392566960 731035983 125260822 506611342 546386962 836410874 871681342 244080277 994706482 523729749 265690310 836669078 324416059 759248071 486744725 773352668 814798119 167283731 248279310 481701207 974369080 196129756 943067704 158612452 694451795 627370907 971973042 241626617 877729128 507270982 482993436 972528374 496031806 811415739 188400155 188288959 299024702 595658727 651991381 822672326 347457263 851849562 738830717 162837071 821790482 280451888 420650275 248410431 154017882 952290804 695400608 583727838 562494423 849360335 629341955 286304362 45148962 212726522 321863824 201034342 124461092 434950095 228510643 317078019 683119994 422705565 175848484 965182343 255985762 647777320 750964867 450181262 636957260 783759690 690840140 325395462 980551379 30758201 35098203 894721799 501843733 336507237 726723897 261987489 592720095 557258551 774319583 161514563 816710190 85328812 755482589 473940386 526254894 965938519 2214548 170041747 330276467 242556505 270810056 67867447 596127695 236650279 505107800 947854303 860622062 560228757 132441576 771254709 773867087 63169206 652187648 632545083 556997640 161866331 74750221 541714032 590793952 886348240 941119161 242068943 942040872 862544964 101297337 666005218 887355601 920327983 965954521 290042339 796055679 847040376 924462487 612010132 652376915 388323627 228132079 657450193 132059897 6152493 34689780 318875324 31001007 692620205 993130951 331514603 422285820 261613280 928455918 472008151 553896537 219024635 625934004 925778805 592574301 999296551 188724444 827417351 412549478 707124834 474124081 436723555 249598521 441902384 238812411 449589004 221600166 799640338 376154811 788860520 550402155 420532094 574554117 469712380 572878132 512348842 864881081 956616227 407194511 883923625 890447754 480904916 232299261 353824657 973587958 61156902 596344056 867904083 898007639 307401237 43983015 597615470 199216963 798349447 510183286 419774110 424336525 171740361 375554604 464607132 167073262 609679094 202897415 373585772 411335670 540266714 206153290 237754868 639049913 747555534 898806618 704802850 525194820 878600723 431926130 91651722 367856176 826260590 205078080 64284434 256841233 706281980 289887125 954454249 987828119 105442838 57393198 19762919 15999975 27907145 687316567 255655476 342917589 285938106 370227966 280216719 581128641 738571125 456604236 240591912 58783544 143667774 112741218 999885193 675811417 273513570 385087452 232879422 426045864 262451506 181281343 587834471 433237054 595957631 850817361 188780394 512118491 351606271 999203499 222251957 596499268 974395893 234512210 449568569 153917182 439870328 350247427 21333897 580002260 582296976 669026315 930849504 944204915 565562864 338481019 772996134 98519655 202288226 643132093 195809795 1468011 150426249 815395653 462314081 579577558 927506263 596903468 208525524 344200711 743789007 171640189 907521215 111537064 654634241 454028385 133979286 575792535 51261735 803694243 196482693 4748361 66105053 606425149 313128703 500315008 385793379 283780046 955144657 889118341 1530742 224887440 386165525 632345086 296622760 952190607 806063613 875341849 656449075 35661544 169231210 772066996 553234851 505804079 474897498 776312570 74632402 255261240 396550206 356959886 510526023 685330823 664794000 799565248 2007087 708717336 867552053 556604086 292119669 557134713 87537319 693965339 559251550 235295714 58512842 294073028 524745219 444863738 358454853 944873611 118223787 672592050 992978839 88897306 123365318 408222107 244154657 752778618 442511506 372675413 922921665 712276682 205028048 664025502 387679209 372001324 151205146 18452593 425809851 796913850 933297778 698458651 955791765 661883006 97473518 159449460 541031412 206911014 289254687 951214387 769581673 665943945 954024138 153762704 948890855 561412143 861967569 466006422 70602227 947821349 12647382 857096968 316119462 404943296 479131527 534247680 60523187 672926687 753070916 791687874 196816522 419792766 185441915 869988141 820943203 351759536 891129228 863888876 918769656 9256735 651689305 485078293 846142987 151326823 577309543 571902208 687557781 940793129 852454282 488209319 186647608 448011540 910980936 775777356 55344805 816358108 420158324 463719904 895300824 950400155 116488341 791010974 89852578 669444969 471286812 210882163 987676838 431554765 403377959 336204627 566380271 331409931 819461720 328511619 188238695 313631510 987690470 773584561 505777620 839180903 445800352 975403606 218095331 860937710 49519786 666643928 846891245 462039683 338887301 761595962 448127310 133686805 857508082 850792770 38878601 724098255 729869466 325912222 357860835 320618033 731953921 84527772 872958495 213663617 86864722 345582008 17057408 768344488 439888961 487783533 415727680 270446709 552325907 598617876 564046653 409729953 900105920 349512348 308278330 752005746 749474367 384551972 688766979 491323625 58403096 180244965 548714978 222267746 726943734 854670695 884385694 853274695 875499329 144816900 608586314 69124888 288294279 29064228 106861944 870619462 486401053 266907534 764122512 70136289 648897709 831173155 262545515 396737008 566727496 10304651 476071614 824164946 417888112 18443375 892923449 845639211 680101993 754441204 937796562 665139371 603784972 193078143 601600838 351259247 231982291 322981396 835923916 733154110 66556381 955907415 587980520 503733248 858884177 299201664 61984056 717750957 826114911 51693000 772315329 900653640 768434822 607043722 456488375 779564295 932043464 265387135 47277498 355923113 24455050 816422039 532488466 336247689 51318522 545638971 334985546 519769473 641550152 161928660 180938114 582162232 473611622 899179303 947574317 319032210 983163100 143359910 456026382 703193822 472560701 268426096 614338092 593594753 528346352 438219148 206837518 532263908 141378981 282101574 139309084 949114944 248654452 677898678 110910591 966611742 165318841 640033973 717460223 438124182 848163990 174092617 731250444 232121341 469216817 430685114 504533358 749228791 623508243 953250884 893495885 636850776 292333912 448348468 959506877 68584011 557883382 521169551 427414907 591535520 405378546 726142043 297291843 4839240 212166936 42638944 621214950 435937447 306391133 504714427 650439147 442879326 57653250 988001170 349501365 559881923 596453679 757420390 556228400 21074037 692652869 241323453 770365943 759689923 453747400 730352051 588960490 534733820 56115363 225738871 110059104 812659201 493209121 743347041 511701851 537459669 269595643 230046890 963216983 720663490 466868529 211788982 447568886 719629547 799283385 602887303 417547822 18921817 47610028 351901647 231133436 638928271 668952272 504775371 335623714 95870876 818540080 975253013 541009877 905065541 785230450 77113938 901670496 808767508 849018689 453201880 129352783 643273595 39266873 547759718 167226896 491513384 130703584 749949812 134054034 143031343 801647275 977472159 84911502 565864080 680320135 756467224 455041664 409225171 750544953 59886263 235278412 632673602 334292456 678192598 240722439 222669699 442529706 334737038 591839966 42555911 598923446 179343048 188073225 626408140 253039425 909900956 148197207 415109820 808185803 35196695 622572856 482825646 647833498 321819500 682751460 300795315 554372638 780538753 382794725 712789716 639661198 97872373 338053186 974784593 860799347 203291454 975113403 140546954 851956832 381410159 968685906 756679473 844368796 566615362 594531852 566476011 630754690 517888278 98266599 995156180 867977252 160905121 630850649 834014908 81990268 696559554 17378332 728595079 376861729 114774292 468321304 566171389 807620089 495056194 306921524 60911251 154249138 322694630 469020215 997494809 580603475 380718364 501283008 286354506 617860716 580892155 624180280 187821472 640196291 600087653 270208424 354218460 897679700 582427290 692128497 121167225 968036883 68072013 540506041 637666866 569447413 918311517 66204283 355659361 905391883 986244662 992546476 262995450 578625968 824168196 644538303 870400569 708399144 846600859 975943113 548852812 126992678 699922974 965778750 987039283 807513218 68657614 313921555 87378897 236802935 491134850 165670647 591089039 949947118 467343359 99863352 134867192 74700622 998495451 36704560 618430002 919669244 751004012 264487498 185002351 547106653 410794488 433691230 323335266 564382132 883841080 908011009 482828293 554020779 731673012 89984048 877605065 729677163 253590896 460811293 672354196 581181210 740787740 91193526 869125367 5930379 378463310 498492457 92810684 13807139 661129926 608468189 21866010 249663730 135247980 616330417 177469487 130530989 145741698 306624023 383950876 793115965 851811827 893377796 691834608 117778654 846696447 685279567 557239821 248145922 84515996 414968412 145704578 779609659 473531715 391538620 118077129 182549309 665466727 226041457 65850281 643489144 884842176 551854018 580554233 833688707 739108394 177581469 75524032 489322545 115843799 875549508 313111261 730893834 477293013 359745077 153743820 947977597 787186461 586216077 611114172 925934456 547521903 698623321 281851381 323087796 896350719 378974317 607755561 984565943 362844618 707413855 571293053 9630205 317573893 147493337 534702442 654045812 925641520 684609805 175035933 542060786 104949097 996715216 863172511 629383430 406291372 81093643 862643117 212998286 479859866 918560041 364708450 810953795 815349364 719901002 301366446 951446576 280188235 241452796 771404489 294127565 395526883 975741650 129293164 537139793 142460005 285215503 375108969 903485898 163624471 717831925 33887882 94636931 399524945 336914784 217323464 70020483 830352219 479121480 263648923 56004537 855104283 229343392 555172053 174319286 110252818 284951418 332785325 17304239 148913293 811201828 714027762 895254946 200951240 910883066 731752261 926538255 369826213 500550511 754835155 566662404 7812378 830649713 973982410 96494550 112878093 300764021 289520504 384000810 206712299 174620610 698471793 953649117 196255850 749745756 551222717 676220251 837525723 169357117 53900170 884926499 878089487 796731558 538485525 28060638 706811694 232141362 471455581 174969179 534217765 265577578 839359293 471815790 711468321 83762415 583386665 791481550 321449956 503576704 813606502 12527391 26472765 154339069 594360932 731803431 958999030 557837184 613133186 25466698 861782513 985885796 341982819 632516918 423270201 732614271 735290726 847150288 149630892 942537665 330111658 725033199 997918510 766413819 493070728 899505470 370140326 668774571 36484148 2713076 433722042 991628077 983193806 717947583 905689029 133443927 522757315 190555870 702625445 736750493 813746656 662625889 806545637 542792038 920401704 567256371 830864604 654678581 886592519 935486692 409589262 376066418 691353933 881197199 831133860 465446598 606604768 712260329 127187305 2221411 930457030 898851541 905794940 2854680 829707957 979285616 95617711 264549961 252288267 346074721 466501316 888020374 963167545 172051303 61600754 294588935 258015123 766724593 975733648 718748277 35848124 780674464 776850208 743584835 494238611 972855202 901004588 859341241 269072628 250595706 61594895 539461073 167074427 970513721 721262182 954978444 439247925 986876775 406129700 864597539 270276297 882095615 711363108 631390214 406185306 413860332 984285667 950303213 438643197 297341269 814459745 130580664 956282067 864118439 598819291 147607158 4747697 804627732 225412098 106857439 812494095 382299932 743619446 909810393 278300713 505824283 164047305 660077168 107345814 674358405 65300359 264532625 531626261 79886814 753499818 134551495 429977948 668386477 349598539 647976264 745883244 92562957 716608986 173706711 141177212 914540590 555900329 677786265 134137934 854047180 586018579 597781094 997163570 587978950 501028918 824073795 725348953 638046049 122819262 930961284 807350817 664125757 252940062 68594893 857816513 974793476 351337887 273441165 812039567 801140377 447342965 391742983 122154154 326933474 642258787 405597133 936548512 122478984 306946549 842559806 765332548 676605937 370705177 813500014 125020996 862283097 40366719 637846172 644584913 146156640 580441539 253482098 74936024 234413719 743186136 465644449 562180606 362784962 985853570 772235105 43629360 432691978 609852958 559400862 709265222 841184574 801029929 749617802 51484766 122962413 161714957 955038489 163948647 189898533 490851044 294726724 616767636 124391438 396980528 741783963 210856105 869366881 222751061 723150134 864851675 967643670 194577548 86903297 793926261 18562185 297998576 780814715 896701687 275372142 535725799 986545101 252077316 544092856 855107114 792057159 634498989 355404608 55715566 404607990 904401589 243387757 527042392 952419184 414916788 660276659 816344452 681951795 480512625 326959994 832660376 178323015 160426407 222772679 824812245 536487699 472363266 172824618 15690670 126642583 706437342 852286259 943605108 192694686 228741840 107400069 956852311 250882843 162601374 216555700 432022038 352961691 365337531 487872230 650296285 907694708 451594821 718145673 783717641 744304008 553795523 247324076 946740235 300542594 51388469 17364352 856953151 106912910 128219071 552986880 282949416 411496085 591382106 863094056 395661003 799622664 243766127 561176624 493052978 381856790 817256315 31016257 811022760 779794455 537085969 916908130 39765445 504305977 453658194 507385678 326105370 357622270 964730063 877210084 219754700 786076802 574109695 577793244 239053645 863520218 76357418 363103294 243165803 811321817 770251255 588447098 518222468 906490256 406226861 751103599 303138284 353953737 520986840 243088491 362219706 518376012 950861967 573849237 258877146 525749232 192618157 361129055 484707276 107490164 345309232 785973588 460244435 291270809 283677857 624364387 837893151 569593900 216181244 827039405 927555593 470926057 167310689 246992320 478555311 346080395 958550597 551940743 822791632 888702530 335546655 72535570 243031980 793100689 459224949 48363778 592347288 63303609 74276954 538784218 192863922 879662364 321601784 569019091 374526380 39500116 257303698 106750092 678849176 146647938 541329729 713465417 242174871 888684459 980392193 842586892 236552884 346971861 633858861 345991509 225191577 139660921 145850134 883119269 814195087 619407528 270149552 832457888 342815493 558120581 468352788 716039158 267126499 438055740 271466915 183265367 674299947 816147806 735181767 739982204 408714282 856729742 579311414 430726282 298750986 326142719 456209644 508111310 786688747 462662033 618920878 257000016 822815721 547660532 449218377 510146055 856329647 715815883 380551092 513204475 723863201 841799863 45950565 836829043 692876606 225975160 794833275 923274843 400841827 396659056 207198152 512865298 751643898 588693353 299177397 564314329 536280672 77637250 221875547 861717907 433640990 855982519 796151806 677801128 286758734 85027397 970273480 926509232 3185193 311179806 324084616 600743687 421615511 730296384 966241833 871640609 197361588 792107613 83209824 941678375 576957008 471788622 51319380 93154223 422779563 458073484 649947906 996495782 511640302 141211029 704687679 93441326 921227877 329268260 50937319 575606186 581828006 610650507 838566733 528659965 957555487 176847961 177112032 245399998 882361008 454444078 194639906 932239094 776332770 149529085 405564054 226717273 149767850 921996691 429188566 299831480 299791050 583842642 709245996 607838456 892024462 138061434 203392002 454799848 524277622 418611928 298072732 89289758 171492271 733548921 255973893 15816133 290937637 462486774 479425963 642236440 599686209 304155850 272748406 637602417 51035929 67130720 76010984 873399848 291257014 784253686 482947382 803164945 585019783 741038502 543765929 789142046 16449154 107584815 520866652 762669597 886002774 390923132 87956640 919111706 294050765 788457480 629742700 402190508 483885375 554600777 731424777 203578022 559210999 893621493 844871832 590799465 611734333 15454804 618335437 812253214 406740023 907425218 987075034 613107131 817965687 283708747 262862352 597325108 814393150 2343944 651060731 593599380 820362333 149111002 645525150 298638430 691412068 531787873 367381423 262065489 148099685 149545485 449110715 573058490 769673191 499152878 652357547 73755187 727012476 573288961 275281438 259940327 760073944 232931272 308113369 611148934 45917265 403061225 238348967 765018565 20765334 923011560 137397389 628226026 916324353 399377783 31061227 840896201 172841739 554171148 675484602 409880867 178550350 51485867 69792841 291195155 339585271 490777427 227364839 717424627 232103400 415688015 666104764 676428425 508012641 657158742 72728860 72034419 24722833 345793534 133224351 637980936 236103257 405540971 798496461 90694026 862726494 585968222 415560745 456803377 137956992 105689789 486268366 249866937 818095577 640003831 908847930 574830363 93208526 95217410 193149507 511771545 137733613 489759933 128032873 466669114 599840043 616388173 552567597 813577862 166900550 900063565 595515032 837424353 718901632 811324083 612993390 587131676 590286223 499825609 8323776 869254627 857529873 558592892 843432276 114381305 610896776 337559822 773258925 825770427 699301614 531639416 633972495 53095345 16760420 13236705 491516593 806503477 595682451 756984363 468792679 690024038 402425393 27057687 41260395 481423978 603201995 167233048 690785514 169022367 276309264 270689906 388590010 813986913 279648077 358283310 551259997 941475874 946928286 610253578 260492980 901840510 724718877 666191800 947666081 281188601 897933412 150148760 23590898 751009515 155462997 679352270 556863547 800783562 263713703 85893694 895424459 646576742 722530010 724008602 339113891 704522621 368443064 16148759 168104183 285442472 335596202 184331256 46357883 813430731 861914664 739289799 499401543 962481837 164311421 66393341 280524628 922560933 157252480 689563626 574460329 388263967 832268995 460655689 133380713 12784476 750243193 308464699 150681856 990559383 11386339 283220304 82462456 30372407 222699649 56794079 705480580 568021643 144424081 763304391 481549691 171470783 411249015 703772462 511199448 653311830 897963946 912260210 299681751 538465388 669658351 849271187 63464192 57544286 468759972 86381195 416676523 344332176 727555159 657195935 909955425 394504770 742087056 754863171 733153530 866239434 810912303 879291772 808136842 10760639 69464495 636766488 692852247 203027072 216794905 212870100 467688641 340231528 490041761 77483025 637087825 101327393 503774006 617440222 11586417 889349294 321639330 20721554 803305742 923775537 697602362 207390439 146228380 58077195 947410180 632939853 106585706 48365809 311104689 993156649 384131069 743328029 519608485 721646494 631876008 177414298 963580533 273517422 818916059 846444834 130576862 160723253 675929972 734993614 511914410 798043538 572053413 984545349 144851663 675871198 474558344 920528813 661419173 133586162 712509488 211682793 6844126 979843302 174179850 228171076 412751307 386712395 31072676 182048293 406217624 305720167 53212830 840778302 525057145 692833515 981605211 720641297 401070223 165270054 959018496 203928754 316644009 634558082 943114008 285327249 829457246 679587847 955821587 126045037 388316510 28984085 9892456 43260177 686374851 792381990 237994248 846848578 887966110 450614204 671392421 903223476 385938998 869546500 19125376 54987570 288340466 795180933 946025849 647484705 589006322 15752532 832632515 579441684 654920598 556891434 525899915 189319121 78251660 446571528 712702173 183195737 718764954 334733780 430761818 126001333 518327837 415839348 701370666 6602410 56950931 311123159 360854553 136680210 631177654 223305365 27546659 688850175 499289014 782306059 964405783 5114506 219791859 661242501 400381260 973274571 240976778 713946736 779382432 547692104 53755831 424046804 759344353 412520773 464322422 546312274 745055687 89595407 592789806 183239917 550619526 84971461 250407831 312028945 239830655 956985876 596905064 613309622 641376073 815092733 938699884 586490328 95355773 679370996 509443718 153030703 434568925 257918383 156066734 741720318 163197266 576768788 463030716 56746710 417455016 493426356 934982310 131031749 756196104 374743141 19055930 353587349 387469645 120590679 100878248 377268965 494577601 151317106 120752282 842662360 860652542 69415569 63227506 740837469 724874883 816303744 392406548 262257575 723469361 822417305 207102582 344678129 851468700 716147539 186872914 295505039 529887448 794360763 601939389 956178242 419001084 538512455 606357062 425191685 660914048 166686103 230034573 427039284 40755838 904384326 428775573 265520544 458244317 281071102 8673874 429746670 319030637 967586770 759968496 741631388 560821573 308157346 709337454 195174587 293485071 110703319 351802951 135301893 986408684 58442414 404384203 789044174 689474955 239698469 604159920 218991083 182085376 782557898 770448300 423378885 407839951 528059075 631246263 466850942 878006987 535525505 946331634 639278136 357479696 272698639 758177703 161057356 503961381 79992950 118088876 301166674 844819800 449993705 278201164 859437003 583761706 494195035 555462215 353879629 828376366 671689526 664715393 29406999 312859875 399154338 284285053 178350098 849129244 868037805 10988939 817364630 212172157 137321461 70272240 647285036 753735409 718029599 544427246 983961274 810043101 853111479 214897081 429557612 173824869 755284382 191807113 156789495 47061328 239941714 922614018 900448365 771476584 379661360 207783953 766305825 766081842 226953458 935561093 146203136 464413689 18791168 255877626 35470112 982069884 2353808 208898860 861576547 768340537 462115214 787932893 457834856 883660043 335807645 841239521 804898115 837504595 469640178 737692165 999349079 823627498 781597478 925317381 732737145 930163467 616941737 942312979 484422880 738456465 23200831 721356003 129428739 244697065 281891023 171591302 674976325 549362819 411417549 939356402 583125580 878618667 129807903 675186927 354105109 406423578 926105666 52403413 383809138 554580772 732557969 848752018 286215136 840131404 660282986 159532679 483074203 697362834 939267112 105164310 904150746 991067468 646704256 193960034 881095864 536541260 759613070 302784349 353865612 616075823 458208431 383582619 728406700 791521306 746781957 946553266 436682638 68274171 701300730 304922892 444844246 572549959 79823402 49493923 616471580 983664657 537964315 727606507 954367675 919004894 42992597 129732494 880578394 905393045 402587453 498741001 796495750 626750229 59711257 113539810 275567384 924128212 778531901 347694441 649589971 752761702 545823208 894965574 220819532 267410528 617841871 335576064 976989254 261258544 917906782 403463447 811409185 356659970 463536037 224776030 401017503 119838505 159292500 681257349 455068515 206008878 536141942 358240993 425203184 113687536 353382618 516451901 49754918 81910314 977094003 272269880 100740942 280296278 82834267 570430775 270921593 908630636 14708917 204437889 441259476 685426588 969954531 72894157 358726212 914644949 214165399 617839906 138234773 896200111 595464323 244469953 974729926 829426584 413402212 507456954 269531321 802941312 448785497 637710721 701844989 597847438 894603655 454622023 695829301 449467911 600708929 665603564 423492758 197607029 735641255 560184810 139105322 501596869 205818035 428960696 195316875 547837666 380087148 834695012 426795807 661681161 683391598 908794008 223359006 57620501 352872028 498063024 951749848 607163427 270479039 779357361 189311082 569253013 262395724 120496310 99535648 992258213 690163501 518828218 21161830 107181768 945230352 580816381 538136863 195400923 303403140 460339584 467950864 853720483 299268915 367877885 30210235 816098276 898489065 859145017 326363457 119949692 529396925 395471626 866720560 653319611 166362678 583861630 921805408 449964967 568148497 845660121 950598816 596252743 77063119 993742035 297020135 132540140 470133197 940177486 439982472 3311139 608068568 898729972 960986034 732841803 854030325 157112926 492551776 62302740 91115154 783849872 159049807 687689946 912251683 686800022 614007516 954446300 141521286 186863260 267532944 532801669 668878951 913279610 332213727 816799686 341437012 873520812 785818440 478902310 604057780 453795666 603297193 257828815 492531069 263255274 592961213 355698360 303035042 448796987 280778626 102813461 586010084 610108368 903845755 378426723 458206322 301481554 972399820 764516212 629500839 94180453 327531754 192297733 814837622 952757399 856115078 503183140 466110805 116832388 748750329 786580469 579908014 466372704 212689184 702954304 217512512 212079402 178976944 879495050 417354548 736185033 108335517 179978429 468506742 963973330 35063244 184616330 35355687 234158166 692657290 615539622 845673530 53539792 335262426 655488555 247304553 116944579 167807391 934733558 164784297 718779830 577649977 634105236 837495996 205533611 372398832 474940739 223151666 69881035 493539548 942988604 629199045 47298713 473063670 957266626 224981437 386830152 634056570 34316302 193295222 765558151 812983112 555327834 712641318 374886061 809109223 380207169 949373183 755393500 735106421 979516374 225228395 32224262 101112350 305841111 828041416 304711789 773646198 593832595 439952561 66174917 486239223 709374837 217617660 819709132 111314453 813986448 327697464 990701541 59248894 145155104 254494414 683372736 264244579 209233673 184880883 10321158 124651985 296394612 991661436 493081360 652745027 640005245 256213958 812317045 42034844 933805358 839835633 519120033 227302240 670465010 926603298 64813832 454633359 803587420 91903671 916896075 51658398 269948556 956481557 607519667 136565390 934770320 140135963 857737839 696596209 215106614 386926171 215435623 812322325 678522891 480027714 429473755 693996734 836808303 639482141 958941696 926062174 225930573 748345317 119448047 794908298 266977341 11330541 817123715 231129325 163343087 309248108 143228145 799863177 890425451 705816963 479283270 549205336 179303741 474435117 178754437 249263678 665781897 609876396 932909460 56090809 438727878 807460061 590371149 455897788 498741957 436601148 62996695 284224329 87050008 650924541 468087139 615795195 395716098 971600943 729121968 744804418 783064787 412353652 172711661 165018619 334553293 689088054 395291260 328046518 207869850 864382055 612661061 931511799 75360327 619978268 618169775 874145809 794681889 388400419 488298161 55201423 431446916 525048441 799332622 284131508 325023710 417104616 81934032 417754577 737982976 253922820 74139581 22477288 150406521 374991407 682576784 823996832 19682989 687900270 504808323 26044798 730907328 588003690 604403193 498823493 495041605 18694472 575288616 986844254 285956935 259018191 97581912 745787173 427888483 938988255 22228457 244565972 70619970 242293737 955264016 733279466 11709914 148547605 809860665 648951392 306941744 183417734 877623584 503045961 660583014 468244033 555767051 369376366 272754161 24762841 169179141 967597611 71078212 788663386 745147032 868347904 410880606 845115698 572842110 669963069 640040056 373169980 266284198 516131180 859250784 543919911 759714773 269552643 57646135 292791901 327967018 419508943 87200036 906062721 484705801 598188093 447332434 166937759 175044452 507476848 505347453 818807316 461255314 768484819 288220364 193557480 260581324 836532974 557187196 209214912 108119592 247933192 779370887 581212601 291739211 233201073 309999051 332893314 736205914 648159184 554314528 791699285 768682300 623278321 651489877 300715904 84537259 410196063 576452098 355590701 667708430 999657854 647743832 962123626 991505730 606739366 659317469 321361965 292928703 137207314 237475652 943482669 987404663 115854486 676079960 834393838 403944607 314710991 160052179 20972965 472056666 729234547 370714812 29068109 686636298 908149525 141901947 978170305 335819641 344897818 317457938 304006201 453132984 550413352 987495217 527409395 310090454 473807578 844391459 772669780 427842381 928538867 357064321 4196240 316991835 198188015 838919214 86726535 577430683 283047573 590604459 136682413 459742158 69852944 285442388 542400030 753713738 766971344 516089304 341194040 480426311 843959683 467395837 493283177 685412982 862499436 113556689 463410843 524943499 931543511 557434029 816778603 961818677 21757359 151972080 286765860 300020219 112127198 779056749 436240236 709068812 413158300 751104467 10854872 395400107 863105930 529100651 588678128 464188225 205479690 730244391 70293046 48224528 89581336 969548954 886582469 427654404 37015703 283785653 579865012 414437544 245235077 285921933 854109482 89119523 685724045 648702261 602830780 432560826 960156470 601386385 720372027 804721415 269152618 965040691 109832620 116847544 114933768 270382090 316678932 251992331 725496343 540093591 278948428 209840682 641946949 41518721 507193814 528884728 663860786 589331107 466629637 827055930 170156194 345159584 651569576 583079774 903060184 5825524 382660038 493547701 361996 813947767 511932051 906414188 933003295 494905041 950599818 626334959 456101211 327972412 422616656 642238035 105746518 841532231 892493762 695342710 623720489 312521997 771951384 2923840 469002673 618376077 129471657 455562581 969587459 282267065 360793704 937304794 782405621 849351304 65836555 282118161 70057583 840538074 477471043 738564450 13921242 449419219 604626032 790744486 54599350 687902601 188899695 809395895 708246834 207513948 617264234 71244152 925443682 948566461 962216865 368866126 339539122 813896290 969072979 201577922 730584331 36424347 194674044 522755432 532532332 599685069 832013347 609788664 434066784 824022807 679948705 290478189 963620627 928784663 17649997 14793087 896914075 987677303 162387307 889474977 983782792 837296776 743366406 507815094 164073518 815763642 613197469 667575089 223506062 130287436 575157429 996143691 5495289 789556 824897298 293899453 708809134 906087937 978701852 771650663 614343869 608653786 768418245 431151608 875115222 414676544 247855073 449036596 77935279 459749669 491341025 695768552 777974175 202206777 971895351 406489423 597243320 836226410 276780634 630924141 269006809 93923116 696824012 454282677 327432070 97270875 550390705 482928080 852103744 264268218 795939255 658915120 622142334 629083226 445056186 309957102 85017100 121970232 543187682 573016544 376120201 474256845 140829783 858339118 851883096 59470181 135586317 508353830 160107058 61706313 451230771 228015750 875308202 799618305 921287318 839606161 629137587 306611250 428090041 981155831 778328096 629637392 892700403 576363828 443839389 924049111 620157124 78217546 257658855 248459175 632781934 121732842 725668112 166922490 243654916 13514737 784419324 186355919 960516244 917816136 573059045 648277235 91709287 709674713 450133812 364663183 419072667 112679881 204644523 942635377 168213352 27291350 614658801 732581451 987452581 211460404 260851628 855310256 117248238 333476042 800295721 456162639 49293298 576522056 308790802 475070340 498408655 306802775 59431220 946845879 899266234 511726660 143388853 394704293 858334161 285516684 944443593 515611405 842128986 599529653 32295873 542047419 587399224 636531785 422772803 756725262 490735516 119546488 770275629 686429991 536694169 354102202 740492484 593688334 410192081 312632661 777968574 816305503 909276623 846953086 94602909 333698783 540562718 131549556 731989335 840257152 235480650 898065542 659411114 485350631 91391246 735779226 475163463 365446247 260165451 912706707 600495329 633485270 200280238 455584973 892845095 859413121 358403864 834342283 482562869 400989679 741202469 92429883 953918597 484111848 612825511 524215017 995768763 278320163 780272610 754339722 448527298 282356292 593427085 204810611 426700782 485251951 75684894 570753182 388233405 145549786 317802215 730218340 475354275 424781527 195727880 34309324 972782229 938140371 908120191 725653415 33105068 11990012 650029690 789288657 512353083 51892931 943077929 832525937 562891655 861238179 607110895 838266270 464834232 320591655 273917116 748249581 26910387 469752165 23563602 607109533 65356973 812411945 509552479 414427475 325576714 345392993 351472284 514465942 708184637 596414212 486622844 351422559 902157304 117724277 8127597 768048910 352532311 328210880 850909451 560933022 890518602 436621681 829206352 176253370 742467887 931648333 715376854 658683567 13655414 669322813 135802320 206980745 108798025 393298830 60556718 26736754 959487492 469729154 207102628 473220695 214398022 330146099 693708413 636888133 897800016 588128680 748143530 600995773 409843544 93401359 748031631 913870686 629065296 380016044 512378190 433364916 222821747 132822877 596976700 670480942 680186326 853197676 754102656 367868081 333315372 74475877 435199748 489070745 50573720 353990142 235344552 655328080 226425165 889496089 148439259 359278945 787822603 276566552 573291343 733834095 476115954 15464165 365419469 317446174 107222061 828579202 257691099 97068010 61294982 575513323 933898272 568485348 50230122 105366637 896339303 429010214 944143037 867651343 273272698 311798239 671634612 774551899 306494239 737073664 941357581 61648344 572792845 944008833 678382877 339597889 449058343 294675012 368181854 805520139 25560499 881712983 440980043 702561256 171946458 937972420 620101603 984016356 216097740 24123205 791517602 696723912 319852221 422277576 763201753 759994361 995033652 159237110 298173324 144409700 175848533 770498876 560683431 255072173 509684957 632180533 684245349 905354445 851002180 592093928 206193577 238721375 679016603 497520284 784988361 534857971 307973506 116666229 258349985 53757603 30701218 846205854 308472718 59742208 822069352 312397849 973570263 384540981 608931219 178822153 11686 130423832 522264903 255990846 105887370 174731809 934653367 324803029 396746150 47596681 828712102 832667589 674620460 892052372 63268324 577265625 220323955 620151978 677819377 319970497 924359662 621538305 109106012 855830552 248611649 39325009 231698094 563228083 440136168 690446297 213819636 394369408 28194127 92559065 545919339 235422897 842219752 409658788 88069605 116139338 913781623 185883182 464596226 582333663 267944085 363323632 977287318 366739277 688188683 381770729 761218204 954743099 173073725 333790683 224558709 650993743 987632121 267344241 80552257 177731632 857430341 198908217 349635028 981309438 724073784 74757577 460535896 534862446 184751117 722718834 717285231 516403486 899402251 840250987 237076861 965862762 901018078 588771901 527850663 220479489 406121636 285267348 823854312 889506674 124554114 935953564 235327348 240477557 852435829 425292133 317714653 794300693 816919493 276980914 382047494 948222267 312510172 652612833 565010059 354080514 800197863 869778718 43416566 621478750 957463914 481398279 45191160 428907134 527332677 733596317 233208057 599720139 919830871 465801600 333839240 881305500 907136910 641195177 46325048 870467022 327135658 364106472 203362341 965048721 12136667 136681036 307135648 100046948 727902332 954953970 145140973 110493635 210756074 550637612 796538743 55963802 862272886 743525508 172968185 725057061 409738472 241441385 667753484 490062116 725440152 456828962 425739251 109373170 576290193 209079641 340299825 232131387 666743984 665929788 702441315 229076260 572525444 985364082 7691425 576472870 915607164 239694491 137319272 307559631 189599079 162338002 151763480 213374004 12523756 576889065 210466290 321104771 102368026 408879071 240961498 866536191 90035514 123218775 357863705 830621123 924868181 628220478 874600749 746881268 498248727 432210293 486272963 29500333 782106165 471820403 958326968 516335853 26235940 839268419 620762292 850141719 8268599 57524461 566097751 570438336 202538336 750106156 589141401 402028186 143124207 679799844 674823937 676658514 412915194 261551259 943189876 338443895 740065490 240089000 776782870 140314881 982741014 387505885 187495637 376609062 782936350 770812655 447033525 186573047 839412606 769170573 553777623 407782047 812423621 566573956 209907329 270275098 765229539 65030996 914075551 769022150 659817222 578790577 260107378 385680753 983773827 658212455 610654242 711913756 34533287 919083689 625258081 407181543 271155851 297281517 570720863 354227455 154015254 708599483 680218654 315522030 779181168 799838986 355362831 866312659 727059851 70000831 379283918 973673390 498418891 806443793 332549772 60684014 395444423 238482654 471104486 931280662 94182729 178073264 241936513 648495293 148321250 580539651 570189539 906385657 923597242 422501318 506680265 684994988 646732905 130621023 696891840 560470234 472270614 446929805 252349634 366018373 141670610 184205752 876798188 478885164 142820699 171343036 55455852 791559875 927244054 695952952 648798856 879653527 568118295 715300880 81570229 458361990 938879735 798262422 367957376 613036114 947653008 122642603 843228401 204437911 155661390 995398906 587482640 168193295 36356474 443973818 465887004 162005191 709980286 123235504 834090028 895045161 423354560 241610936 956216114 405362065 867951702 827645380 327921982 683395590 2409087 742569847 328361975 706440397 805643602 743674756 516927990 52067179 634250956 624558927 208796154 191502456 861046809 406999533 544877978 210333325 838839786 760254983 133675596 502867139 828592835 517006062 674823082 742804618 91847748 43516520 534461415 723167830 36343432 921957575 266441918 844723624 296952275 705336734 958400129 263099630 369790558 7612949 31769161 346205355 639861760 852919894 337078753 900262815 890936367 777410088 832734054 181851936 717906747 95151801 588095371 693995735 195909967 94479248 594668525 829861846 967200217 462076769 804067500 315312030 324916019 476881214 65145250 288339964 696159096 817121272 122911803 561445400 838410044 306037002 902396885 200405098 814740483 86809761 982744737 424858276 83906458 824550976 585364059 564452086 809855893 504882190 920754772 378162954 33712405 104310995 977524076 278454816 69630540 597410362 318504407 779396492 495699232 698596272 584513076 385089818 52616637 112651214 778607687 744799774 241579454 395504230 425133680 832928342 237858613 84086735 483216908 548873923 81937551 211725238 124785366 479554964 629117544 930194437 894132835 416250179 863686301 164057557 991995924 119911823 377850859 117836897 271422637 26097762 702082445 48577020 743171388 648250255 240206174 42696024 829368368 464232983 306275788 758229413 795357262 179724918 441872342 367357861 222261199 536740575 194710731 61877789 864115550 393527997 523221399 557085419 448556489 356676027 366237092 677390904 389425133 764446384 752037815 142511014 72329247 788653699 142719786 60024398 197408216 204371467 957466603 663643876 166470374 903584094 507685480 87962652 71930857 891533821 898245269 578773455 462156555 310774728 647231947 104364315 124226448 466078925 654309757 163299557 26213007 259577947 282369939 400692458 114855882 361092355 431661793 887702629 938989863 923173495 19797964 570418961 877920715 215129871 735932085 330284913 505435838 552252995 56084339 731474959 678304906 476184226 204171279 629342536 867001841 389289446 134766307 12108639 581746422 409502781 968482368 969791249 664076572 309148249 169904928 663072589 818671880 943044942 65985046 906792291 772299455 401498803 65638827 530143670 793931964 601542349 719093226 972318738 490851301 624801118 158656885 106064860 167050865 15969647 294880427 249947930 959850508 171866337 39309525 247005010 856055967 144190649 269840399 216215251 789170172 801357057 608548070 792253129 707931385 248024765 837179853 258036543 644751718 734993052 219688409 461492766 651319764 47397950 156578921 176065966 671899643 346218401 740626467 71861993 115325006 311767829 836397675 570557563 463086028 937797246 669411866 600052178 648120706 198974314 480794382 11732417 377710199 296255831 451045239 584521796 129077266 741327652 944671528 176159257 765223376 576126501 437126812 729113785 69876328 177146229 223991784 54958877 182014417 613402081 926183466 916235196 354653479 332882367 471309297 109425452 194346898 832995484 832876763 317355138 950947989 230265177 443710328 58713323 201278264 371860686 807859847 496307738 39989731 372982447 282213673 944327848 919873996 427220358 849752010 469791413 125622919 588791376 372782311 723670591 653917075 34109970 853927769 576898660 374108892 754422184 723658405 942229357 59772205 636204632 24983784 520658062 798498438 185564757 322823050 593763355 576708247 449416697 745082947 60507450 359853687 144107582 476975987 652623661 562039075 178314089 18014925 435651261 218553481 365434478 54392449 643888521 774388491 520035051 318511793 74101053 247139742 708840438 538913204 688727734 3247065 420676593 751015834 984999681 126024155 986503362 148855324 386512504 62655966 326772689 613770286 37638930 517765156 410957331 680138849 655912458 743074991 947155705 15710299 986386626 676032036 972272853 382584657 34897767 894514464 431146187 848563262 280552117 398502127 532005531 387840811 198204434 904386030 656096361 675195995 654255868 963624816 970456974 433607678 81221776 384882590 61651609 918142786 746227894 698911445 355630179 212151935 381564084 352603858 658494539 651740856 265373167 990505955 192423626 743942086 388183148 797496173 403774185 86745170 628904550 722660094 197812976 495443963 769040247 434114813 778515138 851378736 673479660 543355735 903891798 376583483 411088862 39563991 712608014 858351029 267069318 931770262 414173391 165397580 238630035 553777648 146180386 989613549 256440118 629206262 796458443 512381738 555392735 797641800 319608735 647718883 225766191 397475320 272122285 704116297 290296653 843636227 394698656 957720124 72366302 397541650 303534530 508191170 187025493 189352583 258839830 122309285 787455155 520221788 251208463 959585468 373126990 813623235 543625649 31678550 25756433 862331953 521380583 746888553 344170531 339015257 137171571 843648574 303385543 770588365 785005344 120866139 903825609 576604165 683988812 833257663 346385051 218741995 345960649 769256760 223886712 229938532 80102541 928943355 562119594 262876352 496140288 348979265 159520417 211299236 584122733 845965747 174300950 835970191 475542578 230582249 833302867 240350886 390455069 71307137 681362500 998917868 548979106 233350015 859356389 236664018 189076227 36817965 498169352 627446442 743497642 727710778 818312973 536272860 889780703 132099192 884000639 169383421 865508385 392356602 698233701 221437355 104600411 916043905 203595663 163079140 332456748 909138843 834883799 660453587 67078495 198978904 455891066 623058202 214499624 368128210 279617558 519838617 460529851 870415697 947236277 808478297 689063354 950790525 596522302 619001712 936843696 797505992 658469509 53293404 39369433 102474965 45127318 489722145 158620204 926835363 633279883 605954911 463906349 338847106 98271947 823443946 230530273 15228809 756080145 255673779 971277555 363862699 231109349 456404190 620771781 405802390 213410398 486832624 269539618 623917988 119821823 370152549 968800184 442265734 745209807 773413992 656658146 75952775 849191970 406509154 180578127 238308354 829027034 861469899 606630964 454955929 677592815 153399406 596075624 511438706 596376040 985917734 799699148 538449280 629820182 836097778 51520537 98881472 865513771 468742549 316250410 356179048 238531049 160996724 109741094 521721611 332593308 187741388 710901854 371162594 424057911 249421489 898025189 998250934 997852303 857678775 775946920 153727533 848937593 3620298 476746982 182891173 783023056 643476729 719791927 421304443 316825623 899256604 520234379 982894710 476543172 514176533 977004592 650892608 526156654 750614482 922777317 41236887 803171966 931483255 730490910 78779597 116878495 655026023 800576991 215832788 481762319 217708881 867227587 392390574 166001176 839024579 770449160 457829675 966343028 907472050 632872739 200089571 28503100 351157239 91738488 179222983 493510459 515300864 38647351 800593814 938996288 185024695 67767366 726090715 228079592 91504566 330969491 856173323 371264563 163629157 693071076 398726834 557669697 204327880 873449120 906930296 116987862 84727817 777659586 333809730 636291738 519422069 399834731 984063516 443123553 564827170 277042791 846856599 594879434 861628274 813971183 768650800 818358926 111245324 610107274 599242316 622606758 224629017 77274275 314566605 977171537 800663556 416243750 68544274 664616103 850958160 724796034 145391934 637843752 859980938 22372671 554579423 594746079 588879378 234162834 314398920 963618040 218209076 714811210 196096619 254281097 197147646 636326623 140873331 242450685 62473573 54995245 49981874 786106226 292733231 786444073 484273516 247989645 112909780 32003026 974474926 831407214 854936168 434356202 325864418 397729036 807999323 121038474 95730961 860230712 408700996 240702312 175441475 342523014 411987957 502672983 182483222 956308347 997587235 193089108 847770459 934567036 557608660 937424249 715619967 83798899 258716611 430834889 167167771 791716069 293786039 853086881 683744446 56785107 82716475 731079133 444227310 659051031 477471969 632247318 820738637 305329773 612549529 164509524 872750289 172656398 936039013 45095428 149576467 733588560 579555300 319937982 691638685 589714003 262529379 259674561 194193185 40576603 893274829 39535231 605062028 448283426 481593216 86887798 742611806 899184795 192988321 421046135 915434751 848845788 908634130 735685207 493475207 986352405 857235266 530556772 420182432 736875374 633410141 645151922 636607400 991595207 169135812 605814244 151283700 958018086 401161216 315929021 487694119 158088956 200629370 530008247 319000605 475349813 3050370 324403223 678832629 974626321 580196594 685612961 684347080 938592929 772613910 16622097 944247198 962449503 819790959 222768705 796129706 840094731 176864843 236973336 628643984 870899443 871458010 452985069 719641207 749517098 711887976 971092394 632780573 442212427 647997143 321871123 754674006 110226668 153098171 710445042 746603210 185004415 784172090 707084644 720683086 165279579 61460374 948923534 599598130 462120518 993019908 179805990 854024405 980164293 710984355 443392147 91656705 862577733 467076441 214846454 163310088 852779886 917461639 598505302 509992981 394808281 449592312 308378286 971204238 260629380 858959621 483714523 604556406 472204878 447691182 871965600 242120686 739951422 586414414 83577318 163043979 917310789 736519072 791165355 823077341 54781510 960136147 6503600 928639397 775428783 832210239 883344595 685423266 613621772 189844149 476225537 161459597 768253910 83193560 629036895 975122206 90860550 527737498 709272082 87161414 785106732 370680849 739718466 30638282 569026772 535265594 774820953 174919204 311246985 178702494 203170008 253608845 701244135 91142289 939465181 238187626 236492793 708459412 88583029 772234434 530820591 387411065 445291200 864927468 949136653 203823169 484555548 965377007 463934766 737031230 907022008 330592149 55524632 779029749 530605912 610111763 121823474 737759131 290710417 262760581 530431279 18814914 477519187 203633604 699992989 415933236 884521492 772133519 853677370 566059576 503360287 255724706 790560106 420913991 925878351 74258872 556047902 91786976 244180306 169261280 164095268 950164672 764898201 181615190 321708907 130725541 840273581 866343409 841096257 27868523 801689905 492757202 603631306 406683596 716002234 551845842 869248983 835572267 21076006 973677983 305829131 170531930 529644434 712646338 91501628 495610443 149274777 756615694 772474224 358815255 956757774 575930992 236521648 944106471 941046220 842922069 471976873 428843157 195860643 318748370 634704524 951217530 150153448 55600409 618427857 11249250 868498012 817061506 273423940 505913541 399269161 853328893 51287086 836161917 834364811 7391418 485075254 467618621 711381904 861813092 703433135 549530576 626117133 642613744 936799797 836970986 420320249 80314886 782906918 431279422 185904139 248138421 692873149 872847872 548518542 611128093 795610873 706618798 677698887 282573484 399421561 578724238 62718088 871670000 925134236 549445990 234950058 646009242 22647820 629385966 69318208 384698343 482468640 416133723 980077016 567256985 146511106 432122409 544946979 949417005 460574331 722461125 471255885 282928925 568994093 39650591 265294901 649730242 950059719 851133907 714170623 686686691 828754542 367042715 441281502 226830979 222374282 560218050 471784006 345919526 587746077 919799054 674589965 787282608 367722154 206224909 194338925 406486000 803516987 181372272 961221709 756214159 233052993 643809027 660141155 141996694 431031298 990538515 414391728 230700187 919433831 78773908 78850681 710405388 307246000 544892887 103959450 707148969 495534469 347462747 422085885 155970615 183400699 55336723 408392307 895961059 2858477 541224178 277109697 979188201 825700371 53256461 803164643 433639737 376280645 282306667 672991055 757770341 91153365 974298911 530182762 141975703 635354585 217634128 18559441 763553693 894262363 327423102 970874473 142946892 562470559 491862074 319281105 790868147 751362544 723755335 873445438 688177574 179609840 531240174 541296940 402379623 792855464 208781473 41830576 130751130 443507326 258623805 717763138 331708396 808804719 178627953 945124821 883164780 450210635 853497471 530820672 512390814 808103703 15523406 840783528 436730039 76545189 450771674 465952232 751499567 175774320 8213804 215702439 671360926 688487496 561547006 83463786 332562886 92968582 787883633 140540042 729685497 962831224 853370091 398421109 167877342 496727888 397631633 33095392 494197457 424239897 237255217 671155414 908895042 409649073 541645173 972815271 258793579 836827114 625870831 93261226 813947603 99638323 888484126 257561804 217824497 927636010 477498431 934766885 958279938 240417592 635451347 400840882 197988803 296301439 401527538 719002163 516348816 112386268 691590685 716206213 176655801 146236125 368219605 259400539 708896666 254579548 491830935 610457871 568738573 70285279 488814440 999798083 145260311 268485564 579745757 826932262 951254931 535090746 124922079 423852928 779246096 590817630 483839962 782973255 463608512 936011331 464061534 563130308 862923099 671443609 592291792 538690265 741643579 449301153 734343167 68209681 664716711 804357917 393986109 4599874 995108727 503137304 319858167 433359103 499687862 490378147 244990784 290744524 70982390 754729378 667590158 28056078 229072839 297480370 733496599 217207255 366525711 985025538 765992337 551143076 229626946 318160322 393209272 888234818 888286946 778387562 39326652 833127363 470808975 625157225 126876053 766335379 102737425 56569345 410810601 207823848 647853435 475408508 490729523 492001623 140309606 920627681 493817887 100335397 712536526 14207283 129929640 808507789 924472865 782717439 619177744 680520468 753387862 727394883 799389025 824250622 208162063 71761707 644597488 182510683 848132194 345332017 211114376 207270610 78996083 384219596 235550824 504380849 300985643 672609268 855907902 257007346 961444860 697543023 826681320 1945283 730795243 850708218 160272309 746822685 116051708 395354249 887618505 177269285 561641313 696810571 608084908 357039827 348304472 408612528 135071899 693953155 432609226 655662095 783192348 697519759 235039715 360002035 241765875 244921673 290721537 259262386 964699404 986426750 28272006 214240674 655812753 251245608 875168161 138987940 887518967 159094545 958255144 408368121 412172023 670591134 529124637 528431508 364794672 109223317 379912836 604244564 819342802 790469517 965421187 322302305 662577592 839014446 600996956 360660094 578738401 351134941 480809282 465323063 930433549 163972476 239053182 408740199 968376518 766840052 297249827 870765182 160587093 430223167 594072119 349897944 821859362 875995311 932448884 716715396 878984937 728986265 147065980 753069928 168094280 350773592 137284466 766759494 728765597 593327126 183776295 696731616 550971086 872898335 645330990 218099464 806698166 655150241 83281575 494158370 326603345 884497314 662071107 54450166 541092747 268230433 746453778 930792275 685776954 781383177 636043642 231514877 74208351 587929448 636848996 933943493 758138185 304393434 966263581 347360394 510727217 55596489 801067105 237468932 780090165 545101357 370884028 809383205 204936260 862295089 428615295 821101349 9899346 634402852 946865663 747716912 832652694 237385311 268591471 382197759 357537477 684464432 686975364 69098126 879907743 984323642 717736148 151944213 562560749 949438458 223154441 706347382 252188578 449144363 299014933 196992836 72680917 782712913 250736770 32406394 148832154 956266568 208026926 413927831 700979859 888066968 72757251 824389078 520932348 439804609 143816064 138034095 996253488 313729871 896673918 7368583 721762767 23778011 897115631 992355593 556527764 112589264 901851358 722072984 922512635 757010817 794673195 163209701 865345510 239630452 108566584 876158687 511823769 673615358 998933475 351223953 423885456 1128606 422679409 117697906 11275500 499764572 419743759 855740583 433229761 18132045 701904881 710729927 401132474 437314270 388765474 702654854 957843829 274998217 477789949 439419494 773052159 282687425 761918956 240912861 643016511 396162267 450739469 662281845 18693528 602042429 201565048 497881145 980717927 394691904 931783117 109096337 919301184 267144017 141950371 600094795 302692399 267062945 206152449 708834649 1511657 298631077 674397301 705218592 564583476 824668012 728370834 249025806 282775767 828209072 291096683 699168865 775893034 40821825 609947759 960841894 178339894 618839054 977690054 123171680 176857367 268063056 812595285 922858845 444228898 409127210 738613207 75127384 755850342 302404668 134452496 133048344 931469935 646080876 8572179 772666098 744736100 207121185 83453793 470649950 111914356 141578156 495770096 453835081 455765798 754402550 970827123 71133467 299852115 726110286 252066486 234796766 933385287 195694320 762137453 383691149 225059381 457452617 426723558 447352539 674966439 906625453 413912946 80750223 873271598 837885811 956330418 894491466 525517436 162857548 426372982 443539644 159826997 700837395 26718788 339509831 150174038 111890817 439617799 394986753 995793819 490438260 147694165 39174541 123525347 514179331 538679314 807449158 454111086 557757833 859989359 929716521 881970964 82485382 371616974 414528704 377878041 178626490 814302990 152878954 93381443 319652336 853136098 675797078 171236856 554366415 520690649 879651779 305798804 938579939 819667939 673201910 33542934 717571734 709505301 962461437 350593595 729738550 41256588 974415643 422549980 12942819 54938431 743626945 163379658 186642682 471755179 230000062 562056465 327821462 996207192 247815875 441711556 48583325 821754257 831835923 34922671 168564112 69401108 426140450 158985859 509195309 524596173 995387486 952982229 398286628 275996401 577730914 166451688 883472290 243305477 738288112 284507568 738728159 671824524 663717091 528523639 319377980 967235470 92965853 806452771 58059186 686835353 896027990 324992085 448076523 57240151 531450082 267183580 549655885 405296613 65742939 605199695 20760808 633200564 373074525 510639746 206740391 713303193 191405152 953143056 855609994 537143674 844859960 539508154 793898577 528768454 697151479 24096717 499168085 833055329 775278078 895737600 953707391 611598175 359761440 977778330 903756977 710118328 460249536 821631158 739336114 66202486 471707413 510795990 66674120 718500533 368960694 369060475 527558729 50496893 33964169 154377570 817612295 898052935 400259331 540998634 551307849 517819340 221672198 731497931 67954690 668756856 145946455 32606772 406179199 81061587 860354543 78718837 330618577 457282510 959561634 215626507 796476549 820665557 23516457 159873343 996300376 619603598 28538034 669791472 435610730 351809566 603024022 322786073 663853534 262498465 952150631 532371363 706363476 339007635 179835760 197266491 214140865 443116858 988818633 397821180 82267208 246493368 282358847 436125828 177808913 394836447 336221923 463923390 886521037 60034029 657518733 246107727 508074176 257286659 596946529 523491340 163526919 250942041 591791790 162371658 270674021 947901273 376894149 481778214 630512605 728297491 459106872 321072157 306698139 375827071 236720522 510387269 850440441 360273212 935637868 195301887 245916444 83268326 484712440 545626680 974237016 937140043 745965288 427348934 396162148 498353250 178833409 937181898 9345213 607923227 315464515 987585983 597472605 475968119 608690219 182471260 645696792 651209910 158677989 651744002 22833932 227415628 398939654 586144622 412608581 708244128 372146293 981473342 986410537 585982463 134050602 634398599 522891480 809329629 507980361 565305938 413787177 885314922 246288073 469757407 965019253 809261063 540161133 716590039 784376975 367023484 821850124 858200804 741359128 127030882 706741178 910099319 226665482 319319065 810448869 411342667 965046613 690329991 9773183 529551457 373807404 441988100 889274260 458000161 484281273 587898038 978327610 201657275 441988318 177126321 206166718 491885989 878518073 59714563 630277054 988953448 40416046 867052454 218289815 60920280 367648114 441675478 524612491 173752073 359762839 381652731 984625988 998706933 323138316 236294368 81796193 653659980 147633313 636849905 267415988 618264236 814989291 168535969 328468287 957769314 568084608 973395897 97147597 566676753 253710384 456694485 319547446 942773397 309851039 582337991 557536986 795469385 769183290 304020112 899414423 249742288 608617576 806136343 368665562 495477947 504948478 396814848 427085082 220973748 774861512 750135075 676728907 314691382 774808883 387870698 440850075 595900770 98947966 140917634 309690927 773133509 372512006 244098589 385850790 496253620 732551930 259979618 201873279 719866396 390351894 270677726 983813119 802420411 308232422 152987233 179140510 364888017 733111951 287515731 843045991 248621659 973999019 923529574 715132075 900038489 895528400 162558992 284791568 43375941 417052477 452117442 310426585 535503079 657695420 614858839 793144828 118239384 233425864 269351213 830721256 933274031 119056791 38299587 868789777 706138192 530317063 17648864 721634636 413190262 670470531 510694008 66953809 457903241 325989796 251311360 742337718 18359981 837048209 75217664 379375957 521222465 137178249 166858068 647790308 121636728 195669046 275675087 935808489 155051026 546848602 19229679 908513239 838217492 24517553 464658641 147955270 490804837 209567555 461659057 148649398 148082620 144835165 322970992 375024778 213490502 201229085 175968314 230356013 553003741 90070049 840010125 938404072 8535081 741333887 628236647 441606478 289187144 334476689 48290412 385115222 595808173 450051544 189958645 833709248 545182946 105278264 63475610 192688523 433851474 860294087 441470203 530690556 930502366 720402331 116150772 445701767 222743652 458777564 260601056 94757709 547178990 464507467 788597977 141922816 515827714 351625648 895858761 214148080 899895101 668585200 422783828 447023775 420596251 906481526 586255417 548944611 898634303 461088126 195634503 979375870 910555093 234479057 594723158 419330207 173811277 957625076 566053352 248002545 31039474 994086037 568967555 323403717 890666967 828701862 566922711 565032388 280927542 73548295 767959489 531865996 696802990 203002816 886715472 111939092 144215352 73848036 260457674 280030339 432969171 165342875 481559596 230483006 484824880 267955649 423706961 143154671 582845677 320103819 931694044 829425177 637715098 663917913 820354843 37378006 446568832 377028767 698286315 540180784 973238515 747822050 172743350 200954568 809426710 75567159 956367036 168441162 836857726 598563804 509971454 152349930 474030065 343009703 145671594 404836254 750127774 30459972 928222714 229959850 518437252 443273221 421096917 959778860 204021323 307702593 732295115 578113399 19485538 634832373 679727596 329061622 310906122 618326077 539079406 688125866 946197831 228871740 211190331 406422520 774517157 835442543 200973004 6319468 907384494 508469972 970342619 372234626 857609944 213516114 479704306 508351115 575978248 892460974 456073923 979005813 217373470 641783448 669029099 138709657 430428833 772691549 638311437 125918224 565524123 69800678 652901809 672248177 217602645 509050973 774195054 752615488 608409840 498568949 851688397 481041025 478697157 821926745 595836352 440601132 645375509 673306291 738758944 757618290 436282393 920736833 541432265 517194221 308380893 891727797 720874484 148930118 671382140 131768446 133972322 101000458 889619818 124165250 587380664 489416102 45650589 607649486 330981260 721287617 18104644 527387901 650657907 356465786 897882318 850829501 384465685 560206861 820214033 583665739 192433244 850607170 978443846 17725392 474424330 303556036 687448590 307469494 105889845 302375724 79731893 519983103 835425320 504792404 205339549 211490981 210800489 739811955 775684767 323053925 75494849 330213803 502010262 380196296 666005363 671443281 429772124 973003312 695108042 481985805 644408676 941568919 828277100 92233959 328611875 596902281 360684373 73180171 269706339 973769671 626451910 587671325 602751360 489158526 873591721 624649941 292961737 964439107 21595590 521368156 626879802 968208308 350735198 240346335 520415863 155425302 730618150 353526993 986426943 661183267 366669591 863110467 821900141 170148040 65249849 917158755 965066661 186095993 810606054 731083338 468528468 376180099 68372255 476879297 337516716 151081532 212136515 360811217 870026669 834629824 917230385 347025756 154011190 234383674 243996044 966616684 921331215 291273107 379989828 49533904 967795437 450174315 459130719 906009940 124947957 511149591 992115012 113058754 629995500 920746908 654767663 685817172 852654643 191546479 96589732 336550174 417541262 186669502 220874914 663473262 364566209 983183041 567331799 100544846 556656086 862969020 37719883 934150761 140108417 202990957 191299755 682650117 170697902 375123389 247130002 616665696 68442519 24959529 554569993 232913504 587383668 176366835 246965816 21401183 364842942 601272925 448285143 916271839 757727805 34689294 793946408 723939043 300148990 793735997 937074218 17559441 861241946 631923576 768535852 273253616 392410108 782044992 238998023 625695285 826445520 571834083 345915338 890517046 163047370 358859236 105326599 737925031 101216883 635049895 176662420 521243137 380223042 885461568 345316400 414398898 888259649 901907295 781725945 916784995 873437542 566733744 281105685 14631034 37604502 175914558 968489636 966616677 382677321 429728597 104864212 813478256 902757494 88961487 464862824 674721979 795404539 749660218 238309184 117808173 156767457 928126856 455353140 501564431 560265090 665130526 900113235 784731035 950771607 134315899 204094673 508574111 488052005 816922477 126227786 495042698 376059656 358842059 445640032 14438136 536087146 9528633 463548597 572320268 289251736 502698829 984605048 256320978 754630361 311608940 966505968 379501823 869696696 208699488 797612106 239102168 974764649 373981301 701607854 513813497 880377721 945136168 785265532 184426218 229726559 171047710 485194548 917140934 395994724 656116910 277770558 449845933 546404356 335013716 698398957 503117551 31918126 344744177 970524194 152413359 678264265 78502457 579963889 441013674 846283959 147243175 360265253 356489689 15264976 472807258 259410289 411067156 159852359 895262468 83336085 722812657 455277335 225019310 624986362 932181487 49289369 86669389 350317375 538776930 923293707 48498374 28717698 429900718 878458482 491259315 406189255 585359117 102779907 506239023 61685533 576734422 669449991 439169917 611051176 17437656 479270672 672552875 769214681 229431465 670511856 966017784 823454240 840224201 500609751 678333712 939022263 136622606 987148591 552219406 995926699 622000949 751453692 291544180 499892477 789914101 463306377 203053015 550776428 500816819 387858862 577927767 19235846 174014432 670914570 513855380 795000733 988067746 715589652 255178367 63737282 932892216 301041649 57309916 189054604 700826531 719813742 755533448 576870080 361345923 811029580 522444281 265469264 497689642 437281445 436400819 869706468 404424095 200148923 383019424 998438027 192619041 60174374 60877623 266892835 297845637 245815552 12399642 638645257 271366567 773576463 970367454 109129967 913339130 988725121 369050591 306862205 481705583 85852919 418036748 353769293 22042912 623552911 919794728 135275202 138002182 972233660 630205029 100979971 153299311 960231465 418168860 940305442 247692049 738087325 681032881 686545915 335686075 571570050 157696107 19005750 267138836 885368368 874950473 374587026 598140470 406644245 988801610 217022759 375873886 880196793 652620235 425304610 73238891 447929435 250245434 605267600 375003576 905630104 943988626 624860395 852139651 706932923 131207498 736851378 433127417 233000322 214513431 721006508 823720725 775545977 803029974 274005230 583169089 460574488 9667325 390585800 678606655 60529453 204636886 207428070 97806073 668631472 429917937 447341737 813726498 517669709 658303643 590413592 940771532 296941876 832054752 775228983 546022582 991086469 735885466 351869014 205353962 911707893 634306811 616433015 700778176 143070934 510930122 729259360 583877643 873982719 452656660 652914841 182590113 228766795 619630407 16166611 216111989 773028583 235133536 345440368 566184574 454869956 668344784 946591758 989275610 125260215 508399703 496477717 6848681 221894497 107387709 278439580 96717755 953974699 62122184 980176804 767082077 581484303 474032511 203744913 677764190 843611354 859764711 757037033 9858729 284642128 328459882 691244781 594021465 348306322 376303350 449349848 176145294 620029275 822729557 757945689 416594507 763786384 398282979 459137555 71618276 184659656 292269979 902434781 81715280 752913868 501765845 222728335 829419864 157286042 628141106 526689643 226712443 759035960 711334250 315950526 786195225 381429925 474982864 117795818 182202137 139784767 705424858 329477842 121230889 492932638 910793544 238234864 191449069 911846884 17339453 608842583 544048201 88931335 885715943 970777547 755094516 169697154 875917028 638644516 722896558 434210177 253198903 310469154 802196333 310273520 862489599 870892327 557059078 576167354 928250972 168636008 360306725 811886354 239555182 686229025 633045562 554195491 201414289 725932869 316104769 985347554 767473295 572332691 657789223 805111130 449326367 561305725 425322531 50641109 805980226 940277201 766450513 765774929 620273202 977672901 926807317 127238027 732208058 790441075 894285420 253817098 469982149 965957171 432314484 499236364 670787882 414276256 959523653 225750881 928926359 664125009 312679073 142609539 779772151 544728137 138280431 771130431 63770425 371160166 702289088 355529004 929285914 861422518 811341181 30566305 958618218 15385766 676265149 719091348 377328457 173169444 409797959 836261766 300021653 700983311 732460402 684375248 463959053 995750189 841230924 681362821 367274767 283988328 701797987 511639883 243488799 878824999 170455729 70201553 2006104 291152313 471486748 271275279 942226281 403179755 487112819 763424951 247812667 822386066 940359180 905927440 771705030 548912789 567904626 580535049 437700442 40087723 277813806 179305743 338437459 558650049 250674818 389326435 847780776 183486968 727160317 838576303 238733896 232298293 883120073 846276398 587089828 891809110 750549913 982900447 591682189 198686032 28333121 839421768 230356985 136090888 791436200 233168178 655638416 35785951 219470478 50881502 814470474 149467542 685219284 751965314 699719460 328348598 910255699 896855499 188507701 539550521 147666729 196680627 119975441 368105753 609888678 713485318 379894130 994523968 591243363 903287629 289456016 967120968 958803796 61291758 516830108 702145662 335121020 498964783 504549622 77354539 825668163 767997205 914404816 408393066 252344792 230225910 421092596 904052371 451551694 830454382 378242563 876285057 553071174 755619408 207200128 76792932 986145352 593571560 743685991 948587034 79084499 669875946 581217730 719247227 189632088 80645008 579133702 985671587 468403915 806660046 574428660 381487184 915451993 602107447 509325044 432091575 308317226 850481793 861217830 793880684 165311287 448229638 936874127 859454892 470837081 42183872 54464849 869835571 923466627 426589538 461941248 885378134 810912991 115831053 705798114 28160304 368726605 434879953 724080206 320306659 543727927 495236727 342937611 302823581 489553181 977296902 899508987 479336859 583087300 427627168 541143752 389135984 751662227 80384613 82120816 29023675 208857021 261836415 998319630 213068426 552124434 140898801 193621509 970837915 20468143 71336706 670249383 163208732 199386058 480945765 53593364 534562323 817878753 891089670 493045699 181674792 360328451 756072763 889085793 471940531 166797536 355376270 987445006 391603801 75266217 476407027 696431176 852046686 151230514 832331340 393680765 888106613 390751889 449765431 157236934 182876241 663715379 112045953 356307551 924418239 661300683 731074731 428455506 656888385 333463864 593989340 555923179 723546598 621390763 65409011 840701809 260743476 383982966 196269799 80800735 50814497 103486323 296517496 520467595 916723689 779380231 890878379 664083433 476024940 601283297 992876937 287255126 174067118 897306173 822741277 674428524 593672082 251898499 671739838 98825297 787571725 689365389 781901117 359274686 236359694 296699601 748206386 77554306 173751917 317358484 7164493 930879794 349043647 634339849 916232530 163125887 113367110 53516134 700890528 571260787 615879542 177299294 115815889 121775986 911685599 1950691 764534565 536533201 670829460 558968280 313015717 123475691 310205759 681836022 511244557 827801348 965122012 435574239 124727040 193782358 741533779 966351844 616325192 152913990 791477996 408874471 263991736 423741831 714261649 741227521 646009798 539638371 971866372 429268374 954866485 846503821 721044415 196526948 683899495 491232942 439586991 473397932 707790048 568101801 69841238 935723485 10275300 457191257 364488279 841229130 33043405 862747672 191700086 39575609 658065038 332985885 596202874 821588297 116438862 180234264 665583633 853085234 763796348 858316346 223146810 561653671 582675756 331637527 225193006 72315356 394307696 325435759 55468821 253065374 314422371 65150971 693533696 663852559 839725801 205059421 188568972 24155418 830602381 577624694 922362095 857393149 267039885 218765346 890356145 984190763 827289863 843105088 868815057 62853581 43978135 503165095 235213401 946151211 224342180 428669894 530861874 965460639 204035051 337152005 668125418 942956198 44734763 291728416 731776044 757027119 261063938 658384070 785223428 967614944 335856699 987438123 930859719 115269362 28085270 247727653 957588466 285394034 805789090 32696307 896952734 548033176 644367503 190224145 228986435 640615573 521213057 393030636 643626739 21137422 451046898 84118844 739885629 235949803 526664938 194951243 619497104 883829688 463676493 475830114 178376098 638246345 781584938 513526927 980103964 492027379 869427391 470196267 313851326 213871153 638909187 84990723 623866187 454472575 181990878 754544623 229268708 948053464 155130513 760069138 907816537 103322380 28073028 255431961 896948048 180879957 458169031 600714910 374859246 64288064 129809041 15286880 225868323 217356358 452202258 336415983 785505923 321336726 846007602 334843929 691871418 32071886 432921589 393859042 612114455 396168579 30334417 783837150 256065618 634789348 5176769 124813910 316836809 682663841 240306191 628334321 321778113 113863899 797293736 69123113 334784556 114216470 763650802 769321603 799290945 759427711 695564624 991729063 639576793 830389480 644577916 639162845 68452034 461698408 152159501 436738114 116193362 475479343 713459422 308246065 832982874 587719225 685675437 731874555 821851685 85305768 288205454 11956906 465705260 218036590 92524592 27066138 899268598 324927548 202125717 599110532 899336575 110188967 2427552 269833347 277457716 79912162 757711268 97557974 772409939 649908721 871820611 82530978 34104577 673163576 824402651 569692711 115374646 571590134 243871391 977513941 74816172 300947207 85159736 347762277 378591081 551860410 608960300 336509497 839125780 134597555 560538918 576162176 823669495 547475478 544327348 701244014 694723908 807500277 724906322 363642208 377929034 711333535 585691114 815069406 61670300 476234883 900174925 197692010 163530452 377804777 638801462 280672519 413153336 737838578 387345625 597310446 131491194 74335827 936935850 633751836 325086144 583155166 809185744 667942618 466287448 966695473 174271112 480538152 153867333 499944031 688897749 982777218 886450390 524026006 319894871 910763488 26825856 325298802 348038422 617251982 390131300 930617326 309649312 695331798 914577197 287403026 240184298 687564458 692902742 625387065 740901203 357824530 394235627 94557973 333780547 422016410 906638528 850621832 325686544 865871650 59837132 695977098 353412582 327617816 640595922 462770617 760634903 767155930 518235135 473810608 82362977 945232878 693408999 73906604 748829959 198533887 74188390 920344227 639192716 643566427 632687720 122395778 696934438 46560548 44356186 445461261 1352516 959846393 225782331 844808275 434803453 717266438 118928917 768777343 172046592 499393263 803482461 685024645 116206115 957197540 824899161 891356009 415629043 795175730 537739280 637471528 55289649 87993528 328735422 332544648 718834285 829807081 399025295 902980170 709721916 891848779 487685730 771635396 526386242 271338825 108888762 246864914 185236752 538637260 31253570 929890823 959260618 632085414 365917814 982471938 477426616 430769624 814031327 561232413 284598591 51668693 260252975 480070581 419103409 164846566 353334096 295740140 850631395 820822834 348315129 279050345 139742067 277157771 758897189 417198406 1647022 862383891 838706893 36779560 344001785 167265205 307292305 963067678 338195886 155187278 267044156 312066895 114822940 44771742 294449955 221994931 879687064 631623052 524905641 955095824 874996718 343544305 521401842 220524039 145519563 675873236 269436718 694386454 323140046 531563372 429382485 491653482 170077041 955472850 685060797 280846080 856546849 540442967 511070831 175709009 602377189 534709958 259081850 375903655 335867831 542307033 140292260 755873865 869760029 262615157 143433840 127386063 271785858 857628961 857901135 929950452 886073246 106335925 811557816 188403312 85067797 451703696 162161316 28614419 440824023 233749306 580481148 712460060 800541171 460190158 115479897 931219439 52703831 408756798 259404715 172767265 145280955 30522471 914021777 804124685 590843928 178001439 788159049 859908516 636065834 243794802 414157325 57888945 354897350 708514345 550331483 432440131 534071190 569024578 170442511 685353655 696968440 146363171 499923642 878274143 210737236 899765524 699667102 575879731 930548761 268123344 246192850 569661508 298334696 949394426 564454132 732236353 534766393 927653519 106583266 273808561 78803722 224404183 236222416 607567477 743108526 699672764 402561579 522175068 230072717 761742079 9439259 649980733 216118446 596415431 494177909 888534031 598424958 787786893 423911440 970709213 413071931 5303406 533293539 136353040 469920247 627957300 782493270 51753982 609319301 413764854 465007827 707085844 386093027 10962772 925313082 285108210 572750260 888829096 943704410 798729312 872666177 397999910 426080240 609465352 277367629 644005230 616432306 508370510 292955955 703140651 550520591 719211069 723503574 380943437 618407013 795477840 711792191 712421824 498059599 60578884 367432029 310471369 237477389 792847723 779342861 330145547 259268249 86057301 98776829 295036001 757653664 987445518 419130104 163118542 758790010 483131408 133498126 712799967 506565362 150082590 693768236 194768600 510439560 518845093 310597931 804050086 852075158 271658154 539197196 482567556 976021335 382840495 469082098 553081114 93881548 652091693 599378183 283048264 420021342 515540270 876166936 498512783 306559113 718253070 344651329 737630046 263463234 679957138 562086215 758417427 222921033 23738255 340588367 264461598 361249589 219583777 660082270 348209937 581652331 365441495 210657732 757760294 297509195 111381274 131423781 703826351 557598395 927569411 841419105 293365958 268098513 373412968 163715251 671994001 262063285 271955564 934833905 179524857 667635947 272590678 218241888 954062627 862602256 846835231 494290230 83320133 415268186 920788277 505650922 833736545 784797039 257820252 513241485 750543410 917356661 342359447 709622833 382011943 48723088 93396715 964641598 14039971 58478144 656835773 847231378 529491421 501081266 258269204 685223743 245070454 240772811 547389279 568953575 281521887 466095671 541028152 752534408 754697002 416729190 592513165 541838985 307850441 928208032 667990054 626719613 366596587 751996035 898312476 931822335 125930512 11014451 409066977 43626500 783364166 326399472 35024214 877757627 117327226 881823057 229614354 357246543 382956080 724908887 230572613 24178675 538144493 637610903 185898563 152312990 460122702 411198071 114979157 484896016 460704060 989470650 564205847 16696928 913524917 734184511 391261850 559100139 425574953 129953782 606952654 200003727 915834911 611043551 402626359 142097313 656524187 321897362 142683058 720650456 860491756 728358494 803797671 299829182 220303565 606670852 144928651 207146289 185399030 737407180 382616581 634048345 22355493 632110399 65286089 320896599 865177731 981142813 677237725 791560697 543828804 330065604 38664832 764386695 913577456 119559750 278842961 240449982 110133473 841189481 71878086 428548708 825228085 795976449 995019256 627387263 917616741 199714936 735605557 994893203 495689786 723071663 537243313 287133550 431145775 289226317 466559909 936910801 338826177 388122527 181001409 23686404 398885051 875290444 268182459 758130607 401518511 373651568 863158678 206872632 628310567 175706546 187873423 778310851 55881563 183704104 314428084 393030554 953105667 248884509 567855423 294279666 436102515 785218951 873623595 213473098 130620824 14051673 905390153 888977944 513308697 322566527 286465924 881012984 208244545 922956769 948246960 404042452 51193497 89336201 823200788 238585743 633583047 190224894 592169869 969917339 4642104 693488288 508672012 202682225 435732397 374527981 33794763 517108451 273944152 279861395 169596565 591534344 894271941 33913272 101074968 198625413 666805391 507868067 754521278 426797919 730969355 90179150 109158558 132434326 377726736 513282556 86507960 758092068 247415542 841163881 820319327 516545106 815177897 125086706 52755656 119455324 201354014 966686461 28171353 561517300 494554204 533748626 904754921 460730761 643474900 807278017 586668977 722987378 658255072 635693543 966726534 645295234 864690702 376344712 373181110 341344600 355529898 307327074 25333879 983933902 165995181 754914121 603168258 425838941 916129073 958275715 427127729 287830679 42845713 233882161 532203122 327622554 550139010 839381097 423751357 822277220 335349658 517989638 14653759 836503880 120954438 685093494 644043297 87072888 964913131 765231955 506543669 753140839 500968768 120426552 945750599 491273775 392090475 89145504 235522503 189775658 627665966 607768031 638628425 848614111 625809137 300992351 145006612 325126385 276398703 57906466 907856204 890582928 852931442 260465007 766306665 707957095 818633783 902236695 128963342 133572797 548592767 141908837 115524433 127030200 131265860 901548827 863818200 119343476 755113357 88928306 6642261 646469780 799887694 591164590 689582242 335007821 858488809 109372307 608309357 975192778 818542089 75640554 503545454 36345340 304940593 180233706 840978006 994797575 873040976 768992133 171911924 434234652 607440924 290034927 348061417 555775985 224012482 384885090 844471402 667532950 482449506 125599161 546998524 671485179 612681568 875435377 208822132 653939395 463010350 902629137 731644236 12361142 553541711 632606481 788002638 957765367 325649935 629542667 520520856 195351461 58338849 582653419 6259896 269558488 72795282 614001433 295884417 300933704 558386761 30493158 737718483 340467878 793420758 873894947 449980186 403554572 904687771 880400012 754304271 430765411 448772328 103342921 647937473 642339701 855554714 307248369 73871461 244723360 267251877 544076219 403115381 637248149 904917547 350112871 756610777 688238519 443805610 6843556 459936505 691889305 861582593 665511342 5976524 130427266 372834739 998301393 279141782 78741388 12600100 68700314 433372051 456529994 244265300 528303933 880020558 125239622 672329540 390467545 626829395 229114689 232953790 262663719 76959011 787975718 711941977 241429614 682812938 965748959 804433835 620145810 889796689 465085582 544325020 311730531 655578423 907441649 974729356 67019860 56465175 231777811 931385443 898782724 79323763 729835026 542256990 298148521 640719591 401207337 531363730 375817914 660611074 662560870 374370681 903224656 328523327 970494401 119835833 259898591 209126608 885304536 749194758 4600479 410251452 696666603 69043572 876207990 49824278 686000689 989257741 936658485 765312678 686952709 623971568 75888845 390927971 260048210 501518125 261409659 91839685 244421403 718133316 408738252 375771847 153483408 621594581 28765082 170181213 664183498 604814364 493169250 3804359 532600949 914581602 389743799 296437699 59675526 298066257 930854101 771279430 794151536 752807493 480344742 834726974 312479491 974247508 583743246 439009836 156972077 717452437 270846836 11140180 399844988 684360478 562100760 450799361 117883414 651435933 959914408 567658788 940360884 428031008 840159784 134546842 888253720 311156083 160759524 458276215 622502126 30625162 884957216 651753683 242782552 190710241 707301787 779647727 979689229 591406776 739050265 578941015 679760586 811191674 155133652 703436615 690473326 224551406 303735041 24963665 697433431 66557949 384357332 904285946 590314634 361208555 847481263 312818984 746324872 62751302 745453998 151057867 116489615 686078735 544482026 118426129 362095129 960221383 271928296 518853051 899243898 640803488 946059597 804238991 622225943 778190602 191090169 606418766 452619811 159816547 439071778 813766613 701421554 567600383 503944628 557651701 965557176 935112751 593944057 950722557 937152164 338833335 742495432 41920571 551760444 848110188 19327234 985586765 174844262 341403328 534905760 168349712 590077279 712057432 681437068 329821092 621181134 951158211 65174781 974599422 434664083 818335824 126182095 81845866 597626736 246388662 198186898 835770532 796414276 590700798 68033548 400008187 60624 486196394 207927105 86831313 352911380 290017849 105411859 481101641 985066534 642269724 640269853 635069159 774332384 616783902 110314146 284181409 221065530 704529096 781458236 209385346 517878317 517736283 606749592 547307333 715982134 422021478 942039949 807361561 359835528 566718505 901186129 603378352 263571066 608855158 735376842 258969888 641710204 207916917 519067280 114292809 633397518 732003298 506333255 143953417 243523531 475211807 382669714 801931617 457486306 419666064 855873730 789048050 974345365 333986930 894733668 973008394 848445778 107757407 542039754 962552937 855916039 191921944 993072898 957595119 236389685 75895924 159157987 26353808 79189644 432849566 161767543 253685378 625649555 239233864 256405150 783263918 413800325 573957604 598425762 201431035 498008759 830607996 788297506 999072803 999105928 962307559 144927801 134697366 534977630 996839324 576284207 258293320 636180448 192480704 17485280 400984241 569629398 586767309 72189236 907497263 536977334 89806493 109942131 505548327 310883669 525360996 246507463 279572051 768495699 173997414 588962355 910467531 80307142 996625326 352123706 880709678 724092721 155916140 146089964 943687520 845095142 816193699 59992116 496023860 87861159 249424759 41329565 615726313 206144805 205368673 687468482 186984380 613692175 138624712 112972884 480128267 89937105 297298791 38849257 691158850 120051496 407347383 85395627 564801602 489059196 522129091 505666302 959409288 235368834 43261028 56877148 78637905 838628441 279242182 967635 558577663 218659259 755807180 986195333 392780495 717023004 805672965 658901678 190272853 672180128 536175849 43198310 838312134 955176145 51759402 616647814 996348359 390101717 484043837 878060117 687731552 689376347 407733067 907576399 821127426 117549496 80794594 444891892 395941680 272399203 759306097 519822675 237923822 60648141 870207138 616586822 93169849 117086071 488474517 61195432 310828105 193342993 348722500 617566561 864267125 417490589 832708226 716058488 369568803 331307931 295835919 883109031 541493359 320648887 108064238 20994079 200578775 489137146 425144698 374864243 81609040 36375479 455778784 130253319 122353200 82270356 752888233 54328341 554559191 593954724 240951117 350768743 392309652 579342674 8523859 542050250 695901620 435061738 853692840 835083972 741465468 464338997 592346364 510675844 353462893 418658432 26058891 214031494 497983741 752299780 549769024 975909284 756708233 162938951 585725781 895753876 410317199 667188156 218486543 475809750 254865048 833861999 164440974 135755881 581133361 707605055 951368530 599601942 922916126 551639396 97247567 856639723 683269428 858120354 618108626 548391793 99061367 233870235 145058291 53759433 80524751 283364071 664559547 651415033 787286182 564201878 983175325 847337556 495563060 781746602 584815085 377405565 757669310 601282080 552022125 844249302 996375128 378061325 346333702 468913789 206763730 936061888 607810414 254049005 476324327 668661350 272355977 445131405 355253075 772791218 114996769 475724257 262419578 307136443 320037792 828218087 985386086 462113870 93740876 747473278 501288232 22110978 11529915 348590240 722254988 745011947 275757570 46593370 291833718 535062567 419993200 625992852 128446394 892104543 489836179 832809986 840360355 868811404 334644929 902958496 213926359 674299652 373399205 964447014 403448229 765575921 187838730 782040080 307934429 267784344 686151577 328201936 952253259 979554692 183580900 695128615 219327110 809517328 826766325 988790958 915339509 987765644 856131902 343543839 425527869 662310053 223665533 677929543 897420648 102822470 266587442 317604574 207411914 354650000 699154042 829555905 202253016 808112582 93604796 995307874 248970268 665895700 351271738 113927585 484328792 842205726 314364258 47876058 386495053 410732034 185197543 413787550 94686550 360320685 525890585 796252202 536323959 169232895 515828853 304370463 326145616 470743663 338167378 821668923 725295858 716522193 805082745 11048316 779677705 568040638 855400040 840635226 538818491 689382962 25911109 817122703 229228057 529050405 958299511 157570264 997600936 378734285 263891956 358422492 466425502 960192125 240291873 148524959 359120521 853771338 550490279 337932843 771616866 529900359 245266240 672010515 743128288 411289084 805940620 932970264 750422273 569506133 176209604 379813373 427821183 168523487 615586008 407005923 244786239 703822438 779922757 44755706 685045136 462543933 607495699 92149207 503986790 132604866 746747183 651662850 188844775 106496474 938093595 822306506 514635789 578226274 632202896 967414362 612888340 930140098 400042937 498687329 380263831 55198696 664388446 588326389 53190197 390973481 942494431 133612800 439942342 801519333 44154429 234639280 260554798 88168734 891641086 917663008 167864778 856420017 872763562 974021591 513758152 80632914 887352834 354120424 247745411 397647750 143809416 213719860 935566278 731469131 281204765 840109380 638671064 74528431 762814090 85482763 984650131 373643165 598954324 672268039 706884888 163324645 893633818 46492954 32223696 236686910 730251809 463761719 522429685 910690202 562993267 815794867 323150457 592345391 850086673 33460114 78331334 899056424 976589010 827650317 594508314 852919338 697371504 543798456 277182551 831001882 262715039 19901191 207016077 667197246 966826651 675500974 127046209 27032508 322258806 820213352 525246941 278286063 292313767 34932961 647965710 883804809 858886647 596583194 944999800 261305983 944174795 2224372 986644070 862441802 612431884 345846013 256033563 478787446 692928083 121857116 913576038 450439305 412190414 829844159 931853536 888658087 12644266 54003967 699023907 16679277 193052561 976459830 937031459 953194430 179019596 412387109 864661364 517559864 502125234 728130640 892815955 899692648 615315258 206569672 565965425 895433526 389581532 42172 750433795 970631112 336346358 955537223 554501320 332837947 542509700 285185151 141179865 109324523 445098519 347316749 387968336 339809 408558408 535174226 773743094 707769751 390900623 648732347 483907233 456452776 658511245 21273066 385497829 15877934 932810340 226562699 605437065 395115964 894604005 952147774 239735649 656738826 638004478 579815011 442087096 963921995 704463759 899082697 667122425 317354037 195968303 58936925 466400097 535429380 71228136 796164769 351397263 173428684 325130297 228807860 659538039 108557874 778457536 212157203 768124720 547780802 179917387 730697531 981175112 530501225 855309342 166209245 935214977 950901333 664789886 879440612 970525750 773334064 710509414 221012247 709858141 171066312 28097203 832693686 806579135 122038156 354691938 544968351 863308111 790469788 336732119 294871592 777229065 800743564 674871360 738781087 10653542 750663652 572779407 323926472 908819106 380020084 551383997 731899439 280116145 5959190 609527580 569943442 143861291 773232443 768897028 478242954 127728243 428267613 266853806 954086849 379835615 308435196 228931671 970524437 974000027 858575808 884254378 89891945 415753129 241083410 409016093 347270705 573344088 404833045 72973320 333527875 933896789 759814277 587518786 163636642 483591828 576926563 167606871 363319893 478378492 762845214 418750020 307542013 365230837 23177589 444125932 437541743 724075914 806413405 204884433 559372672 998844952 359157010 483290068 968656092 321552810 230785991 382220833 14806982 894144813 155723944 135747343 957759203 714679532 438718770 851609865 694076224 225301531 506261667 693882104 612404122 240407981 101270400 453192737 23766089 421089669 430851644 55927808 121259163 141591168 229340808 309693888 576259566 579027637 758904216 378258532 434564983 438739281 260896004 233254787 712136719 97509753 655763789 688901413 436017739 353308453 253191667 758027563 736367521 165601224 504382676 242328131 455764837 629109983 959817387 682045 370101056 302715532 381860828 603814560 417812257 122400031 316483533 628463230 884596715 723663377 608277960 222552572 755115342 95815253 84282463 472474820 811525003 490734945 147138996 696627269 346564975 135343700 49767571 580790750 851458252 487285016 621322817 505645089 28359889 945747407 343120587 897588600 60119799 219860879 691103376 216310639 393977357 353796793 574947362 523592366 680700320 237922636 660812224 492124088 39614474 279961972 298057180 836489690 119071699 699582011 337277255 93319510 529838132 726270797 742480190 531716332 358279949 718218876 481820265 894217361 641044689 143128569 984301324 198367260 840019318 184753972 846865788 46612146 944844214 61476645 504971912 147612238 822643844 368657234 342607143 680556075 816024709 356947252 402443999 440962508 366306804 766136407 229257255 441846419 694638479 500411383 825421831 633000673 943804342 419774321 456637336 830868029 516510351 209096002 252043082 936207985 799699246 175923821 662159697 625716532 771506553 110038093 855060958 26245737 886446905 363058199 120596220 21512551 723759386 84299336 959994912 389614700 603789210 909490798 242245213 697217938 700963503 878981031 483638735 779507927 349948998 730031242 448375453 696211633 487703100 613711747 889165723 113362466 552764818 242015072 252074486 510358237 154482560 718859104 782040252 305444170 675236046 756322012 665544227 149645441 719269394 827914751 262548917 209898088 846819539 431535084 585252744 804662543 969072029 173125379 72229651 814505586 606343706 74862386 668067177 159314585 322509553 625445353 614116406 917221166 152564076 839889827 551998880 207589100 300425096 89068621 445008645 686464343 330279008 895293407 834779066 787002364 744889782 856000847 265861666 219113950 854442400 797422008 980020602 245999292 229930665 894317048 549605014 333303188 175367987 504326441 403632855 855473414 78094862 927314642 334579514 955401244 210997586 391493229 619209792 155686379 730141721 448811346 748953267 740808328 953329680 135745971 41108830 987171590 792513419 380790454 358407821 782114312 503497441 603271898 465227654 546058340 503968038 967460981 169774982 860899685 709538436 704305564 664283253 907766915 945414917 304624085 493397922 348343537 587715999 440333676 333120169 960706746 669470541 276414234 247897339 743854605 779890362 192650436 46998148 340630159 267380310 910656175 451114748 434875704 870953005 477616739 239421358 689954877 500118132 433864696 344261917 692059961 166487423 924396006 994889147 823487008 75561345 402726998 8711847 433813318 605742752 795675565 344292628 275597142 488084183 672368632 470944807 297905871 231177602 748538362 529614054 849561854 112834563 636146388 842923248 963215169 339344306 131602311 744427780 202624071 506696895 972858888 747811831 259608824 784366362 231617213 513731166 847083955 412939510 998293627 345495643 158058539 907024881 444568971 181661141 875826302 954685829 485237536 415560206 252469825 34816361 641936767 244234853 456670213 894909796 1709688 429271810 429954092 962220012 943595093 558291274 59710462 817297031 590028208 815235798 283962689 277490708 70552909 467897062 932917297 266507895 730827734 861398240 334221597 887367720 132946822 539715181 877468942 208706463 127157411 882781978 548111588 282083889 574610118 154987460 854042318 428545222 959870313 803747747 68320788 307848279 738302579 37965194 939087456 715652601 892016485 935207065 513900653 630458895 601742856 345329441 236593578 429492955 533086925 697490302 71286109 771440955 976950881 10462600 398535187 331878336 369392407 965238660 46440863 165928720 832708969 744852783 872265253 193335720 26012158 70470139 578372684 115892159 705885252 216655307 570810774 929047573 902917365 55298584 232061590 476565436 898623467 316520305 876001087 98397631 52934306 702498754 705847850 710715943 740551726 883300086 304240717 152026605 841312803 612982589 645022275 497297293 439959035 106493234 970959832 598968234 699091056 678576103 303864254 433251063 18082435 867481125 746914644 54588462 597690587 108693078 239566222 964616744 281377473 115142717 925721535 312772066 963198012 754353971 1980334 977797982 815950598 993994074 453894847 145177847 815948976 685505843 889929892 896200033 926825954 13574017 881873220 517060429 168362821 940102144 820886759 372500887 638194400 104270229 614243830 99612900 518455331 955803043 437483170 44675365 597696585 278212698 304795468 642888352 838451219 775029323 285000649 13893865 781951685 738852228 862814790 306889818 268217134 87367143 948965117 856701612 380188450 450739811 386282730 619471660 903201807 216020335 624364014 762863762 408388429 164467430 844617874 419080213 236601854 29752247 262275588 711582914 496594532 486480232 832980826 10145924 493552813 142592943 285667169 375219626 124646850 540214754 596875683 608079076 79870875 639953586 85645809 597480275 142742721 338112455 331812944 240088407 64397573 113985629 363664724 897764623 901341708 563581124 415370025 860361202 386487662 512671471 363213259 16455734 518679372 504481379 949567522 358172215 125682100 324904939 801665094 95629052 85485398 979234031 485883551 918448130 463484390 821085413 80834918 471834893 312731633 84142409 537493044 398793401 833716208 354472779 389741153 118697158 353889448 53473414 962936163 40482635 621646597 213450738 459792373 565101834 931691520 844355488 971683319 19698628 548069853 848549541 74331534 375371085 709047742 709452774 544165606 612560858 734625400 634250768 263745918 358327834 983432071 303429944 278177747 212464973 70800431 203677186 871039157 740218312 919936109 121016131 678278011 409474005 708886131 144100697 319464010 143067400 712923965 56023446 590235928 392688489 496179749 47066159 596830547 714695184 63591548 143476892 206008847 971234353 336720872 19838748 537302247 14611319 567092512 872029328 935804667 79985961 659871936 11451664 330081252 395488849 611888631 435532162 287395924 71967798 508104617 269599494 223099972 487177822 45619778 700197215 606895029 971704563 409288513 53131411 721050419 804908665 741370537 819075310 658556490 279589140 765141268 102246522 25603996 652147763 193371516 928037792 731118532 939709315 837439069 711789909 969956905 487985620 505790520 865069591 200271549 389306829 197743773 324597193 898095702 960840133 250910906 707220184 580474469 229668028 211488160 249131107 527337600 487150573 732127638 785455741 218005441 231328163 78061265 33968866 758393004 70413862 550048416 867942673 514843267 151509412 178794121 372003059 21316433 40091330 387257242 357124212 241567232 971114062 683563464 208984026 111385123 8144301 465756215 917757704 535871682 874333353 708633800 185040371 171671715 428486135 242136223 59120187 761032575 622043848 316923602 763311614 97694383 409738292 899909376 297214270 370451394 986866087 194336779 509111483 298602803 722478633 250781765 756561361 34468035 838179962 869766059 176269841 145495401 765851188 414205898 387296841 173131294 138058464 404825903 257585662 960805033 498142619 862354880 586076549 354024098 923867962 517890870 373052212 34654641 498299445 544655047 973512904 78149063 197850128 605093332 541431164 741592390 720186978 772376666 803247693 149684384 795244618 44975451 747951169 626200439 403674029 882376341 148888650 81296996 577583455 138456666 155886489 242367863 189958696 476399555 547621876 630888884 976400231 44280311 330480291 103526396 113878975 802126664 270603953 233188205 594785696 546176169 86814191 650198224 511498398 649396359 729360515 322550447 148327260 50744217 558818664 163346410 201533446 552996356 625366393 687032764 32176767 50641548 51467502 820159499 71621967 532285473 307395679 436506191 13171356 833611175 891163156 764991711 965448842 753513864 410892374 166543998 65233066 936235753 310251007 457932666 404061714 625488825 387406501 716499951 387930094 646083016 644891910 640050541 909123141 815348621 337958329 928663204 132669173 666518824 951829770 332196223 97526953 673755944 790434698 492975945 765640712 661962313 419415156 870690658 404307237 24415368 662304769 74818960 464995057 960060388 323094630 431418382 482409107 987179085 932580988 768698086 429432404 206899126 843116499 831080660 37873156 83083843 127086190 123613266 778138755 925659126 885293807 560513295 291190468 895916821 166331170 41631509 808355485 493536735 260573471 925186221 300906124 922434642 280691586 561512591 649567069 71842725 828665863 273784713 864557957 241244333 271851665 620882176 757902191 322339039 95997204 844929063 172683067 982380114 809577135 531642875 991375164 81550782 647894125 226905151 440321000 346804279 146724841 500814472 515421963 884640183 574862565 437520372 660133128 81552509 873338184 40349284 76616226 167722901 301789296 566783833 433643700 443144879 657387148 278999947 710379181 111286979 591787674 596926045 905173915 882838738 736041174 597582770 321594488 660852378 690197148 665192552 946756666 336936430 893854804 551889946 186593078 542724321 497826944 830843948 989966875 101409294 818281303 979844494 742798213 185613309 275963597 843371649 479106118 786421125 575402103 549476792 117528564 483560961 92567599 283399702 151898347 999151 128141978 6926010 200052472 82842097 792838011 819834868 308082565 553846652 196833733 902825464 880399838 466912429 330787152 475663318 689868918 289729519 935726318 369560356 724642450 273498863 398038279 95883308 398845766 97454146 834668835 623376612 927496343 52897368 653336208 177764509 496704133 656212981 748610739 506854088 241634791 172897269 135534065 344613973 986685994 464106517 507047562 986732605 818692068 873300351 94091385 458870760 460735484 924380404 809222747 734158095 369299627 655222369 879754394 517822946 714508225 386425170 837190611 519406260 139343990 117647695 670518078 327337731 970868817 212211308 378906725 490835103 375519396 475425941 583157466 543252975 755985030 375496619 748694675 411270945 145119820 329915671 742056445 678024897 93672835 263667189 18196725 522151643 901578842 291494426 175855903 792991821 41395394 92162276 125435259 436110085 691803866 579404644 445383341 414217673 516760833 889126493 533734871 962725951 490539743 376211161 741636900 924054568 822941252 262712889 30069488 406298203 870332209 935755147 279893346 877659399 671685467 4430045 504400391 106470924 569298261 97532955 288078155 366150446 455655114 689171340 719698951 201332781 168304954 634707279 719216402 161337301 649695906 697637829 874907153 329725665 785815624 907460817 469432996 546130988 425409473 987260300 776358551 414505692 876795654 393798506 576629760 972311753 603709415 428737805 953625303 220239555 163171483 21963587 77240060 70259083 697118478 786613796 477236027 333757342 340421424 48329930 170505183 686755311 384518098 186058285 572177040 146753275 851867374 582454055 968039046 969152304 411348676 825932945 376796121 316749777 256858640 481945468 581400540 90948371 730917554 856906057 483790299 410815308 467611722 320941701 413995096 370106272 352034701 634864521 195087836 19292316 458110572 850281564 17000116 295974343 539214855 483194529 929292786 565402206 880976493 780382419 863675345 915256767 38741335 946461819 867701386 461771308 407064120 4990609 579882529 692222102 98244482 34524534 80379886 427556570 302908944 999956823 396692021 963735696 84405315 309816480 184490200 7505555 670987839 894889532 118712092 510846187 256413019 396347962 339248527 897865277 173333345 675902995 739459643 936014500 15762815 397378184 437709812 927541309 32950920 327417611 277481668 637456489 228037608 214676753 737918305 509250773 729323766 783347648 773566279 439769598 380338121 575617848 107514482 509867678 383043363 678093637 252155834 252728849 181452734 418225062 52412517 289510408 670836407 58779183 591771108 721800865 584542700 226922618 202036291 448157199 486203159 116134282 853281865 577284698 87444163 998663595 977974426 825379549 234794001 25329099 546757329 959563625 590637250 976826189 931213707 293852547 789185210 254001817 185869580 386373015 328515858 383030891 825260069 676170053 366556901 588232261 551484968 389099686 340963508 10255936 865083419 727517488 175079220 419352732 670620896 384401268 695841669 885384715 235527872 301336570 296582924 533157237 406497039 871490071 727913632 538867025 599707411 200783271 592119300 867879943 953174876 302707693 412657444 454073313 488894119 500654087 767549444 873692457 586445925 503652431 828168080 898373809 177894315 511807783 487823653 290216436 208850002 117849327 246000808 106439358 207947693 538937839 520726817 929568252 744137873 267124943 293343042 500681426 586244958 13139462 708986707 723626350 176927018 760507268 51449763 456237659 563294236 781796772 857977094 795237614 367223628 252097293 555830105 396751129 622995281 991188758 995164630 116766430 373430009 114627032 843609067 915184846 369369458 972168389 807164743 565810122 18021811 265974745 746967674 172149499 150265266 85659509 160961735 792346051 363841633 831269283 903560478 249185725 741560394 407120006 140492724 452410715 473996042 485762389 403618149 315394713 822207080 682100658 694749353 139349945 800579454 456743317 238894886 418541512 891769187 886629632 704473451 545748475 374261328 592943798 397891737 383120211 745586692 393225749 341576674 507046784 559821803 694287969 906138509 152141132 227999439 585625466 339010603 327226893 318021880 581510132 348522256 230705615 585942002 648036501 942917145 365061637 692652178 298408868 549831854 649232616 766341182 474786470 534873746 596808805 862797037 831985716 177814617 360508961 715542267 306451435 424049851 958287618 980079732 723088037 917237014 386186086 211944186 165214648 642839264 166282137 119648059 962915458 630121383 366057996 176137319 747728877 159405284 80113925 158575376 663108804 892015392 34240848 367326524 632380915 968229862 54739458 518239760 490407121 305685877 371928276 435743919 551860034 681632679 983236604 680175598 568163025 77519922 821639645 679870193 768705857 837781409 758393655 289974126 872072052 243774697 34153828 83267042 190003839 976510397 901456324 202465240 632415100 891172710 736065038 990431861 927495899 186831217 910973008 611819882 596338917 904800255 607353088 299055850 795357643 814711869 315902185 223058423 383719537 628706274 915304374 887942806 273691755 4410091 745930652 538203965 677983767 4966199 398413599 249360660 477771040 346952395 117036599 557780169 489788238 317816922 55909223 302203271 913360773 778402101 284966934 70819833 491690038 979402315 232108943 543806789 147468122 184507232 764679461 785173842 488248626 646400940 461134677 883382939 841689423 360226058 709352063 83354348 28085359 362261219 199868837 548195824 903388097 357628573 875696388 838421399 21725120 681437838 554906514 195872354 554381326 286993195 906726602 134985123 533622490 173772934 492423796 795846136 857748796 780802782 121667232 186254463 975704479 307037186 100004621 678771609 133704148 225137152 8384378 729189815 467131757 117865543 146010926 931524045 801560179 147178941 860692862 853334432 715158352 700494795 715858764 807586896 149809669 207157500 988581826 731964423 648763892 114870982 110240709 927628140 270249314 13695042 137829202 446084778 823287436 958041868 519042243 930280466 126557965 902725747 244532598 693537711 941684488 791369132 921714286 242400880 694151728 43386899 45623337 189833117 959279058 259441728 420301671 168990574 329218808 925291244 5995901 929302886 937935344 494172852 680710690 217044989 709529909 560836402 948796441 524205069 961779386 442956068 241050145 356729498 25144210 183758626 201328930 956299362 444713704 58061785 204988464 578361696 943728763 334542973 724237789 191231401 555121937 87626728 20729932 653355393 580513526 940099511 809092848 271235285 47577140 464464134 322500600 100417533 160931288 942789435 30601221 422072884 427730725 262093988 563890517 334599671 662900217 367125235 742562346 159866090 919959511 844376811 364374059 269509933 479590257 886074429 953374029 14182484 168110503 514016138 847531750 989734682 312724154 328372903 1876846 584894711 723131813 921983955 625642211 292952359 712002001 315933287 422296255 669862302 504814719 612983309 372975926 311976728 816800868 553436986 105733281 429006423 906215045 930640102 484071151 41781895 36778647 105434199 190712211 176531723 926596967 410043 461026434 324669337 168140468 771428904 819179522 579421453 959431132 230167098 754484017 405518290 457017068 87194591 387178247 954896580 920404151 540439095 103856578 631083300 119965099 300137659 807849233 463900029 730690521 594988315 718198631 5415279 472661860 636429423 4195444 642753591 16732728 117152264 845874504 900348569 491070337 396065920 624913081 88261767 95843414 890955022 424832923 649988958 614994687 478788442 611584900 181092371 112532344 930565460 570767554 621738796 886079523 299607365 463096476 450235094 58605435 316838562 81220544 869135248 721778784 953435411 895473534 433703551 313331533 560881705 502985727 191199399 642083324 598896294 789291214 710813949 92814112 3626595 38245206 46291755 785841585 878921901 94638098 76375489 270178975 833893565 166645692 220897799 582070591 620199115 552957129 214786551 978160334 447649358 6670397 969843868 339416369 967400888 40414150 326367188 767892043 725896932 624985948 261791392 193371230 552331026 891779275 316460468 783765716 648613445 670736193 319916408 888187907 933553092 239968765 580920467 158031471 719853746 270625179 24119788 211568408 549023023 841767711 733149188 403992730 495533890 750583242 826027192 54461183 536705766 299026140 559426532 419416790 299787584 422722729 261115629 650479458 756369945 267128766 902122496 680769995 229342987 417191772 848428341 994189513 758947180 339467466 675712258 339628252 717298037 624126266 699317959 457566335 21850864 637107141 436566278 781980830 831751897 411575159 99423662 951400527 471494301 499013684 632647044 151980331 948403759 411578755 156405538 581397733 854845174 620531730 19526699 786226260 454623615 465986966 970932287 785969057 542325561 462074085 566224195 731300237 818916221 697899860 878789265 336697104 929022788 930406653 301047994 183595637 531645759 128690800 343602203 22329762 420560239 453888135 858057827 330489940 500181948 525837065 778568419 832885160 816513076 366235422 313600838 557884710 381267746 636173232 763071219 287578508 597546385 267510084 602922868 505895433 577999368 254363151 912786935 966173599 997733839 925706245 262602327 357354867 16859543 153883628 359414514 423547252 637528935 448940842 884124712 974629082 183079907 168673338 601403325 234666049 176144675 118145955 614361053 150812467 566659515 484645122 32972863 82174253 923451390 599543653 509575928 65816629 869782536 139987382 86132664 234324584 445591749 454030807 228699494 78652529 17439976 944445575 123964505 86672408 468282080 210421237 882526309 992151182 882334407 849192183 4906636 263924589 587331665 692137990 190892477 630674229 409422032 446309284 829992418 548102232 174489338 261516255 293834672 711582528 891785515 287043888 201275898 45395876 503940503 722141529 936937555 12927708 707173325 328913650 257846521 263986551 946740284 817889811 162956922 8891418 282466945 608223110 526075468 887246634 424365842 923963776 557823812 186111896 806629194 790507902 172377144 545207196 950384192 957494446 559071143 235647984 564284812 996830523 870395198 97211650 6868918 168541666 744013955 786804389 784981060 305915236 948742770 344109381 326463170 313540099 536020563 858346573 824867050 718617690 965761192 325274286 691221746 435189702 610420548 249067090 472789045 873443640 622405874 278631356 570856525 810071183 58150793 3564110 359607889 783444176 861722455 641802613 728154713 711920308 402058952 502826503 231213552 765243237 83320447 733438169 68928847 24967910 789026222 7611118 359846866 831782027 482849354 231415289 796812174 428231181 893717941 570310537 997004046 707067625 313757689 278220197 162328684 812885185 775797113 605968444 308714421 565768004 32787337 922406323 334058129 528420678 942021648 153456132 579927766 285388569 730486168 253492045 287086485 92692939 67348007 231922616 74719529 654429023 217800934 564464529 293612946 860951665 952120791 64765722 194670638 7700688 613405618 229801871 492104380 44123274 294493632 916389989 39976415 339244103 693470315 522345012 707202257 540960144 190765296 227980462 263964938 637825366 778325207 943059669 155819459 988671013 589276421 85944425 426974120 239360766 505990111 198963460 647079574 915630009 149421767 377033105 17940806 605139173 720995284 485745628 819762974 296937143 366155698 331745972 769777614 227625666 310069600 984344392 675821256 15864515 904390543 214453688 281598504 688599131 105875610 117724933 288277847 520900438 714840572 696684627 843867143 762914824 785418639 403156453 421545606 860400550 763354014 461059370 119098142 81809473 24558029 442190883 771586693 404915925 399480712 271127298 971047298 648251961 146160045 992573274 616015306 487099358 449493300 984402243 933929413 849921748 341630234 167866661 542137232 443842460 824629191 581774145 464403284 281705457 85409022 681902508 313358064 106091819 973739314 582348353 304014367 923295847 156787489 993316255 278387640 766737976 643213892 872976309 594818138 641005207 809334729 565308304 323015528 614070137 268661847 11146493 269344265 296355103 190130848 251705056 443946162 813883553 624803109 273236479 575921482 797243136 88675621 948514674 627174330 661948069 487153158 195040812 18844739 640374846 406905642 646043421 219777857 893003078 483810955 392478599 204186510 478595365 847358314 279755979 299442815 128136473 798780459 959076867 862916705 879070551 587742851 322279611 381442382 845935353 265469512 418588164 261660596 269202583 70732016 584743739 456501283 289198621 682730160 525963152 409459256 994172495 272759209 82868665 114536733 612799682 415453384 899786480 354000902 92692338 188919325 670489068 329214059 187255920 312287764 319142356 989991036 600732101 239193857 85138210 406925270 887320718 177050432 41638087 477640425 601150419 689082142 41133158 984980319 731808452 346484280 376177977 889751320 334143140 214074491 660233014 589156659 198750541 732591227 142148670 333822462 394693939 122604680 52999667 558867426 366383758 287084611 675772903 947306104 873244316 850933571 480345993 140064012 933972317 125365179 619937221 460758225 510726123 330626446 594745480 563208696 97299549 330553634 896017530 632271419 877944044 584673189 734300304 465579997 535424125 261444958 102374423 20529951 398053915 436596814 734722801 561258201 882491111 115900854 563631198 470495735 484556812 304179118 432260149 899889637 479697186 846614392 316932467 113351229 19261054 970128851 262796904 592799543 418312855 264101200 200039 709268358 254036602 687077054 934530964 937206685 205686237 860402689 963523051 862830043 550141779 8953700 427166294 248603037 939383197 214031411 267407624 28648482 16329117 351112437 763855451 183542336 748383271 334187510 550929485 251573977 214329121 981427884 494146024 597411180 360901049 390946293 961438064 472018195 315291344 337931799 816871485 900885640 917182711 155879508 926078856 730644156 510689805 985832703 516064 352878153 11451860 472373516 975746636 425952647 277963427 2431400 53398927 157091659 187316094 376874430 861634623 716658831 314195677 54629597 337816143 317924641 620228133 395531993 806984291 258577097 344907560 652452222 484241919 189573919 534981729 966878358 605576277 503270386 399839620 876722847 483458218 889335260 431041129 653062456 397553594 402976721 276968325 638523650 673750420 975030467 164577559 332500416 963901927 242742383 761507541 582117121 586364033 258890315 917093509 647681892 561004207 295829413 209053600 660120932 337458480 653370190 63125955 407286904 643908473 807763216 974490655 152001658 99242295 125624672 639553485 877198049 804473483 840744517 969792378 807474798 562631543 833789045 875546391 311609791 61634324 785175567 785578873 759539491 893713010 494520470 388579184 730128841 492238968 577498167 484354740 889907291 390580583 241242636 768727780 231790728 736600467 602147693 69740716 102371625 41166237 238816814 28205986 267558377 886857315 684956405 780627433 988877257 177453117 518813847 239698931 78719234 499622244 455175248 851641287 319193729 677734581 906955444 104271336 818508792 327921887 279653414 687571714 390002937 533727609 897192908 147121238 143590932 331839952 130966862 672147705 285727287 411414766 912323640 501436668 127401726 570797245 494029676 430091663 167963982 91526833 19258360 331477780 34128315 176181470 506164443 629476042 123667036 200485612 696402957 295459024 14485303 990517024 73862307 796387392 7017777 441203461 354513370 125935174 945582550 461515517 443645386 51878970 789537222 8913049 717462891 979609972 350674071 356288453 170402840 88496884 997904862 159106800 315204864 635572955 817848411 567615105 605799706 683078951 358156348 355382130 455321504 149456694 62978154 140139118 181215705 192183294 168259613 698824316 36682166 72395026 267994764 100232928 418903374 824093492 827425098 473808640 424771635 826543745 168809026 231899672 736490691 674314019 674950147 168543240 272977836 13838897 5841218 939856692 231193490 657390052 155246677 507361167 548902107 409995916 30193583 721341378 710033271 748365436 317091566 528192533 18458697 63631011 629403743 549212575 749737234 839420703 478480638 522351040 280384832 80723061 595378930 955515844 74155806 575819547 957205452 618731584 533636952 462096255 834316324 769085798 567766473 647375547 319848821 638057496 546947370 404171446 567861350 928877701 497556691 837940789 103584120 409166689 990588828 706849553 496392795 474220103 737642251 838769725 85963130 314260335 611974343 976325625 938589932 749816401 932128333 505490792 750476012 872191930 552069608 597879399 30141997 566164302 862193679 281482928 779321982 108223659 698098539 869627630 999663924 822639264 356543309 166401892 991139597 998398200 184047107 944186109 520872638 813523986 598221371 213612003 841300121 449265196 270653452 336880156 732607541 890136403 261847486 28331644 749122138 156785197 444334565 74894828 416093059 456169347 764300946 773777287 529689850 353365376 99223124 759693507 819094508 171673780 451128027 939741276 229832417 317051858 291331975 558539990 776014476 7113171 596319435 786829212 361635948 282092217 826906705 708383497 842624229 506248395 615424567 708865396 211979737 134051024 978655219 210071218 407684580 656106881 825314743 970152986 963367250 617210271 304137700 739540899 432624438 731169991 511224785 109790348 858048934 768382218 198626500 137213504 232081727 885801729 764829719 366511112 130718492 545240133 304544987 868848018 426422219 140158765 85035276 108595930 775940394 70819456 394812771 195225476 50507160 311828219 16801800 18773731 908126585 766258301 359981677 985143587 708695442 825873496 210446486 578781983 174783105 745696578 422728485 850383409 635386591 497603837 698008654 520513800 204911697 239006091 666644860 549872159 883710629 80422718 238260368 538672421 952545423 300562571 371451251 97387327 598197392 356337917 311472245 660290116 575881785 821803105 391998712 393532133 401466243 850901396 523702254 845336102 447227542 681411076 972353170 127165759 833222308 602021229 312107904 170788955 19645887 860828002 651223006 158743380 767264714 599929780 255603027 207427007 711046528 733958695 832957285 702283314 763052148 462065944 876621119 570820112 69178916 857900959 906082309 399722517 180793302 887234593 559295266 753843752 548763835 347291361 143608369 351444288 496041237 541251897 964244018 303417777 65825678 629985888 93284480 687556556 100242380 213975297 941468930 928008758 503825122 751442714 417174227 13177854 633532320 813976929 437902833 760046875 975951774 694262347 475129847 714739610 959685245 102995410 774982043 854838931 658864715 951412220 507065159 160794023 87801418 67100558 821601585 22887810 94427449 61668367 50144711 870046848 85763191 864476757 889725254 714954367 158980657 162072978 956789410 193398480 945729988 466496783 381338978 744161434 875919315 358123779 772156837 353133623 761548385 643340782 113198412 81920340 147809544 563863316 639872726 392318256 22878371 833416564 408081075 254937696 312629056 221633769 714233210 435753966 689247143 546700865 607079228 78454836 213027251 566114098 619698712 864920062 401180859 162965845 868433206 85587179 578748521 362765388 290494142 176024711 860448012 215527906 910574890 228748388 116934315 201646355 546714072 105816944 949664280 190035837 657587189 111099225 561000063 226154149 298898402 109897686 406554014 885345954 253899123 834048641 123942722 675630747 425984425 909849451 633850764 972638931 362686639 536805069 386779590 149271224 194631909 652391294 312177374 983456709 20145029 661335911 453840282 734928268 526678632 944896452 212172022 348351458 318612924 144507420 139880535 577392573 923462340 216908303 726586158 19570066 267191662 12950497 403246655 989358047 833862299 26625638 291271715 137445659 641575212 118079611 402472082 352312462 136390226 950066923 843833911 224935194 724596011 980292359 287446809 652206200 339144302 378594344 177963372 353524520 541216570 461291788 382307618 184615327 152692729 864919835 243814815 261037908 573000300 825120121 343816047 401472433 656766350 597585281 441826679 436372723 818463380 957768303 467787658 540644978 327027507 350490242 319229565 468721482 98917467 502781417 499735871 362328785 179396151 821971971 976694122 440018085 51271337 317477386 340989154 182709228 186501230 275832886 654911806 426785196 707809483 705083632 71232908 949746616 87795477 602868902 5753960 160985879 647563135 39875225 412601691 372762846 812514764 738776495 732707092 337680990 678557383 136174004 113031020 337539674 496183791 153583852 906861263 703711072 673579366 776286313 220186762 655564088 379199957 37217085 549138609 553493749 354869907 168938030 822852983 752210514 303593925 635923393 685433021 617690872 877265026 434322355 575872646 114579336 254036942 788783521 774116718 551084122 567299757 336295619 830718146 364465674 144567548 449937427 393971361 540861116 944412675 944354939 727188499 993379187 895643364 673254797 389072125 58875552 596939150 779944975 451487923 732619688 544544917 840890533 579526180 645985821 475126914 584595613 461965660 226105741 364084336 232046201 587061178 142108977 474260765 485299242 615770387 47312633 706615608 565241939 288472916 785709149 640165431 606805109 373004850 373024185 418782267 178449342 518415564 344283465 532719699 452508988 472849132 811107239 438115684 452165046 297447177 30565276 421026564 379312786 164046853 908142507 891002656 593711458 945332329 274803986 570267889 394327096 502803951 535302765 755386259 363524520 506279065 657721642 567591538 671041861 321601311 181756460 705324984 1707666 361801930 471513895 588420429 120203571 668008574 917899978 441480670 544434268 786239792 812777482 847014551 274062327 697204472 397850665 491230445 529087134 724537240 493784733 91986479 731341282 283386682 798298476 859462366 613781454 554128842 906606980 539619050 818580860 534702730 888974134 2392986 646098987 713256302 130985947 109790740 842632575 564286303 436563007 661250533 613170822 642692616 248798337 562978941 11654351 526000987 904400365 609664696 681423953 213583449 645122749 445837448 290404158 267811328 380005040 696894157 359829656 16168072 932328285 695250409 964535755 52610671 90257942 299836533 257276862 958823270 602438612 804201221 634232105 217381187 423782112 630250626 188149188 23138915 868261905 4515887 115900404 651811464 652851650 370448814 507536289 522984895 703503959 792314582 837224615 629968744 728858929 798048751 753698121 256025208 112670738 47592670 973025160 99489612 502120577 977030723 255325812 807834875 872894591 401205233 60562262 961013905 173183857 626858449 153114853 544432659 889208317 650360521 5920369 549659624 77959127 933813440 164970926 391222583 695667474 833788174 290428520 718976553 799513156 751318172 955415910 579546161 332490597 929795741 610930853 414955534 967214697 758811598 913524595 709213470 738555992 783405515 360516224 292468469 248531763 936233565 166626849 377935738 492357271 871255561 305752666 760839987 386079776 96118616 427372774 139137208 239262196 890172025 14501442 448663458 420852109 859225943 891975405 128498039 5993197 619609261 531614713 67203402 558137626 562753627 478979499 242088432 435074523 221507229 727542557 159767851 18908404 261432227 756326449 612873818 550504753 193359340 890563207 191082829 178707445 230096773 182415151 818666777 180819377 21944071 646140441 584047453 293908152 143464304 750106340 71226266 969099077 5066129 877028190 455178730 497248817 156878644 517508874 357122060 670117974 46946258 968801159 649659528 420919731 678876568 495437548 375662769 266096115 148029371 872052816 345564893 927106860 260146678 30185327 227044887 229307879 550544827 733023048 182284755 973312169 805867270 167161478 299799053 645930038 157963797 861405316 58791615 784971952 663499009 104796629 789501601 841535322 368690005 356123211 113624630 464834101 797796561 475053889 755439310 281563182 30450071 728739136 393462163 325730473 260244588 576031975 407599471 971299791 30063703 892128862 496457344 757555521 46378691 249751664 886510808 108372801 773330398 582858697 432064894 19333010 969491975 543691241 430157396 974281851 41639083 263740599 768147604 583703381 872349334 242447524 312762253 703232041 188396847 688019888 943999111 111458536 916750647 598766455 597435811 302761494 587392572 926963823 556840391 135883058 196897170 452366337 320903578 323921037 426837737 295435942 423812652 218539180 105186495 881361408 262059604 675068384 290405531 580973871 59404195 285960707 632951857 916791518 69870688 983411638 396698004 529270477 844903596 122468037 254758125 73943407 856076370 204621227 162514145 260679535 753725038 531792317 745424599 572670862 863184109 236554829 579979562 571852844 134489749 447960101 778198692 193941844 686218792 987301259 446723467 656065410 897102627 86821880 37033624 375832831 815144249 468487901 748826131 657868489 828974667 40806279 91777710 965089704 97047115 286142307 84164160 303235997 753166240 131011964 823387393 249444018 567988087 699740501 72537259 988868560 617209480 833992739 28044277 153800275 714100675 826280555 22461943 298308914 757338560 561836002 984874475 170539276 574196693 684788578 841183789 675136746 304687945 474559086 97270025 929133825 968598083 426512781 667715093 382598133 752751873 838707168 403563136 234950896 635219825 800595596 725302071 71269336 270631509 871295676 516453736 519319495 49104200 69268423 787913501 976215349 497056229 894732419 330374016 160074924 320934235 427543226 10039012 643302932 610720438 707341360 216639775 631055940 111191503 237474893 75304488 623885764 391380089 565891707 927977408 344724310 71574976 639730273 831492353 539463298 110948276 547537671 834177697 547595312 408240759 443619665 862744225 942655853 17481082 692476497 76030303 257982050 753025444 752429277 93065514 475212717 293947196 865320483 840949782 788150540 453152205 786861731 608778249 785835352 690774622 84007172 802911636 651438638 789746741 128297454 838816691 710240151 948232120 974806797 996361346 275954250 229493034 950875426 770118368 572666437 601076508 188728196 502567015 502835137 613620047 935358223 802537539 862363856 177061581 115158541 940978981 962215892 403180666 692593232 486261307 686141461 378532231 93634278 535748833 550621193 887623233 453472750 525367468 843697788 584260005 885257570 926802977 644264342 866993856 743165625 58643986 878973611 746675128 140418434 293061100 434472900 939897940 312769052 341965965 266986942 374750421 979211225 173084551 503129626 913267541 511286306 863938709 337430690 800597113 356349216 843358905 205547696 510045988 839755918 602542142 372976212 167163524 768208764 43907146 389730614 487766381 26407476 33917818 75930871 629538123 879877072 848337690 809975586 662045211 541560957 590183220 814125262 219202959 494463868 975413727 854299946 434769302 810993267 381153579 296146833 840499243 428676762 203180917 981480539 65866309 364647877 229028868 269858153 950988613 699010238 731013674 225923667 489677674 480996249 116455424 313159843 309031546 734075304 841914382 615162683 16439052 491460503 128322428 999078692 934421788 542396658 514374280 819163254 690309663 272400490 112796765 446991026 649752192 62753859 768851279 208544714 576152439 919675963 164057372 303243321 323745464 522734192 711946841 514606224 764541957 455175194 799182737 415442648 383015768 58250325 269549996 465550706 559963751 446427794 43229791 130771566 837639439 629638784 621129209 365637019 629529113 497597579 614486752 453466306 727268089 498466737 196505617 6496480 298079022 905190676 736147081 68086774 387703105 825091179 734301110 953622670 168067587 525594293 836717120 329678554 890373077 844359142 831991482 754836916 895657980 671204563 66308856 372459237 505027021 126284412 745826159 231675163 480927084 81567423 939395626 663400824 99508197 219074286 964091562 528921910 926874292 825192384 787312907 426858301 584641679 457877642 332836143 774964641 36478353 676439410 369031102 879566932 474426561 293823538 703811031 946032302 978282726 684912883 325417394 340166423 333060009 493046874 268949558 546488228 63682352 892445442 797706849 33224346 386976226 863635025 617057759 284488446 232954189 489636665 420736320 408564560 339038656 136940297 855432735 848403083 53384914 846321757 3793940 810330063 931416140 738102940 394064895 346209356 800773248 92734336 950470224 595467415 768654275 490668280 649771030 344345992 123139185 23251893 973306407 256688811 798389243 708887234 208441274 603605642 522697624 254883552 182354682 352442152 63510844 633289282 342505063 695265422 908579409 965570902 545867226 927616435 540746412 97638868 282835316 259650317 575605814 173639985 331918249 257633188 795822524 177763651 482666752 401930551 178492627 578204426 573902811 618978808 172336685 637202715 512951369 381289844 831739528 342559618 696796081 903436890 162771342 933056239 426236978 139505626 209947834 603910452 356132970 340398545 242537196 816310466 43908136 327038293 102032665 146890808 710600421 204914148 238583140 78153867 567943011 527131047 61222850 954979817 198872121 57840289 703041796 317096343 546367385 537178626 936680273 646700209 485802965 734170747 115498768 651887425 405646593 455109154 784339833 719347811 235894222 373550503 70737911 327586221 255839076 421758420 797675524 623169599 991800738 862082056 583575788 848641620 727559852 457708904 776362355 203596490 790170533 110695837 251311878 978649500 676889464 165311566 113963231 588246778 944461219 259808746 261463840 575315922 599154707 9598921 732384844 980521430 268279995 327619503 42260672 605401991 88072786 929093614 48638563 96572411 526743239 965491708 661383227 698860745 280079380 323182620 316869758 362109173 525641054 44416381 214112323 956676559 199753742 942652349 893954330 972565809 256351476 828549086 783574089 712622643 163828550 751002821 772020166 243461180 210444450 274882148 636318294 931795105 983224509 137337893 747747748 959066291 681883439 418146450 300196268 743658725 373774897 355362359 477013698 325339677 875177772 722520634 411778 686567685 960362425 765884396 588447638 872893152 543611747 964204735 407357838 727968141 226432806 514328144 956796836 817981078 715391112 364056935 124944937 306809352 198690145 890820176 388295799 591146609 220726705 644894236 139639762 573748450 253501024 888095505 473675566 172551181 188542021 946068922 218000284 668699803 161453504 287536674 568295877 397186709 135724838 592283702 40537409 499490005 176136038 180875168 898606678 177503633 263444263 419091459 541542049 98367698 15462045 318222309 119783370 240865483 367294681 34753501 612376949 4477628 877184159 229199645 794895835 515654167 865800670 782296002 963750612 99537857 592480719 435765517 115298469 676164066 885000564 627325132 960770339 522878924 270486459 929418536 567958158 474260414 989500987 988732150 660653096 820998265 749409851 626879733 233618095 427682167 328950035 324646077 937630567 609121116 957759310 57480488 772105873 171997812 274272635 20972874 668353428 569255682 407747256 275290963 877490459 242710501 941885687 484874629 638119210 903228018 677326530 641707949 536738710 451296272 998961773 338133207 565525475 237004369 215438227 377462032 523279915 424249693 19666429 212708963 458926167 934212138 218918331 109024231 443250400 308311400 503448639 129247849 359299233 505969003 661704483 710425014 93066841 597349277 751850963 967991636 271171304 812785200 457012725 125118544 470530891 910989251 248541688 641311614 142890343 969965595 375390581 582037535 200192529 530507999 498367902 443650687 529043103 146008761 681768170 523029360 972433800 318783872 390191984 33475134 773411447 653565073 424072210 608664990 268881984 63120884 382960727 20919924 489088786 773294246 404177575 229582794 644862690 220285784 107759345 831342041 939150885 500173845 861854105 801469732 673611140 230879457 57572920 837133191 536559912 511093762 189641798 368714041 584453261 652461200 233376110 691911085 893610590 642542050 775798886 990859683 79906906 120155404 414872429 921707383 926701919 488794370 334052127 494216997 148136734 266015175 329609187 822130665 755677604 796192549 231241557 972390687 462839405 185238598 862889682 823286789 40921669 982276989 718099614 154042089 128265713 945664431 208254792 794179600 852499173 597930342 764920883 972615296 392131208 413238815 40868306 755868240 650686051 85699115 57133745 178970350 229031588 114477797 120528824 604097278 449389590 439008194 264436746 374452752 531062792 62653501 288699066 738371479 995870556 713254848 247129803 39895327 412173298 556396777 627952777 829715126 559291816 460938162 73745483 874946795 169793474 962388280 695787021 540390983 388143143 563456652 743360405 451771400 262908316 366619396 978718291 137396293 56289651 623267749 398431727 233379205 124537786 76463144 723787177 270919424 600598103 670116187 678496586 620687430 32996306 176897122 534285803 634783683 899351030 424465565 323309637 290643945 259568258 955035043 988555614 776303014 801447747 840440090 84490169 808084007 314303365 720953111 517726526 310519190 459714568 246797761 16395891 23731330 262915755 264475758 405338147 488069305 56774136 812420867 537838105 459937828 525821319 747486932 134923232 405714967 329193662 16120468 480406148 139991259 706113527 867302976 76439973 585701668 687836741 576779097 489160831 730353589 835860502 596640906 220310267 499937207 940876210 961494196 133637400 726893770 633082745 160771896 802294338 717015589 385864539 333287452 114769341 349016710 205413527 266692000 25997214 771486814 422644262 520772096 159775958 755773717 686794577 49285082 894336865 109143220 201684716 996204203 888020137 146405475 224274474 215164375 287189751 91019400 476628650 475249035 834946010 484864140 24602434 247876440 944238815 467439335 26575136 434173529 728902025 672077819 550389 381743597 809425975 648443370 698827691 453765564 157123554 927776510 195215998 76261643 404381270 984618160 573643580 26908932 989566730 176167987 306732376 916925784 293153731 630815285 241181655 384821245 802341343 353379951 662181588 756096393 739648338 709707987 960077010 160577954 193588443 944875265 710705339 821332576 600038530 60319646 931013395 52588678 277133425 599546332 44589899 4374948 344654336 533558703 54722377 68119086 231030139 716214225 214428104 685813346 487046801 308114752 906413351 385859876 782988715 615792177 949166844 701229816 411684876 662481384 918782712 177913033 639111451 233520002 82285039 803873291 243052327 589516965 864053141 943316151 463807741 230880072 671512341 864148467 265322489 256744488 6011665 977987896 225620555 883048059 109607420 723197207 198549006 934417666 534905004 759321713 81447444 874161564 435994432 688517354 493632738 738931881 914974961 60566577 748579370 738348526 650016596 221719023 664532030 253351804 697354418 856783464 964917082 266814313 552322530 49543665 775239148 135063028 556124552 940618891 404534329 266745584 337536086 570202279 204469435 830658572 66146855 131883025 169960756 600873509 192206740 85074032 135683721 40523351 419590643 316101823 775372967 634922661 440852057 576565302 845304583 81634001 802546479 702295526 61403564 357575593 270203288 635450591 681880582 396029422 622033279 620739377 135005024 900621358 167973013 456412947 425636089 880085397 514826335 272813433 733085682 190777704 675097767 848533069 678433183 901060734 518596410 742841399 303184486 59645969 574311779 715341010 524688210 77583916 669730906 137323524 488025676 76286242 480838867 558263201 27584658 923288570 595460583 591956574 347077872 528838958 412142541 114710843 58626801 833463768 230000520 48770624 859680170 826094035 194822487 432488218 395762884 214282996 548319823 157908439 298426189 479243261 365254978 821232008 42330263 691484336 498253986 870328106 420843076 478934180 336324833 33792775 558475437 894775770 670856886 502095060 288187503 291535968 309317843 565985700 250142664 247271823 82293721 189631969 127516832 446034243 526536412 893688618 307053229 451415502 50894253 100973587 569431612 769003369 421327578 835506 125106496 44364299 635591235 624829603 10033683 732138794 153469565 715345522 862532605 902841083 251853155 670922830 481982573 778389940 743420140 822999794 769876272 715224728 292561469 363579158 265367079 504462165 138712748 133956985 81300735 892117124 715088073 117473034 106658288 339474294 835241804 818359819 636124632 293828127 7352786 306832604 733354550 975324248 132771418 495953207 864592234 692248198 269640885 717917596 186235168 521732481 195960815 958632103 278859012 236311892 945201 560691439 844980774 903408353 668136274 387384243 670050063 864515818 999863873 330771968 993812717 56728132 889044572 558818443 218824352 274123401 928021872 245559247 56436575 774382274 392290133 405471306 22795962 134672012 404769157 680551400 365678623 333793246 656915199 952900684 750960868 809622998 266353817 803032424 28096372 109004302 201504782 12316486 999620866 118357381 410666892 780066193 667735190 320179777 53915535 310589927 596576123 701703084 704245149 493990450 183634338 409811098 198759649 680293181 945356888 28398492 626483705 421049699 678511114 223489110 414095915 118277830 124722403 994157060 298913380 495128815 477622212 620492097 696867258 561044020 799948162 63566647 635009292 798471746 742151372 37822653 664782560 869692815 159616694 193332720 850471972 994063902 987064561 556749439 943847074 280463168 939056243 199416495 110033700 643422847 348884287 770660537 542029808 587999895 522275546 747121695 252108709 649077266 838985993 651889352 523647286 244080638 943881126 333915240 330345460 380472105 818467983 114108836 420314909 788555370 795872362 868046682 809951127 506265734 568459908 763545119 842252984 332351625 817851689 862332887 596681185 913613481 781114373 809577828 921701439 80950560 831002889 208506709 685060207 527056219 389416145 316650154 662376887 386951632 716965794 111165504 480982971 25338925 621680675 585315868 290721862 620497681 158104168 229823877 670293899 898554427 694356335 283840878 309772408 928250341 149506884 705593170 767625339 325330631 656050751 599888440 751207639 757193949 458396097 564990320 28502166 120774222 794128375 361072252 672596721 76090660 197796659 826821736 420057717 428398369 993939055 740825982 454288381 925098880 172374378 546016297 28664016 960173814 915110428 842338495 54453120 769911082 178209173 244757891 306666904 228890815 92838868 133907619 89603675 563123192 566349685 979771480 910735112 295369206 490023215 62632373 548847027 631289720 186840756 200223623 702509131 286124830 108666431 400239300 842921381 481102861 30230366 914227707 290903925 345405778 870609296 645983275 577523028 89834116 469580172 86271154 434814841 659755002 468776506 589954919 732145732 184305823 491241333 62561132 487856542 260469288 12500545 343744580 295747492 821526010 201814817 430563592 462957181 388725410 68351488 840830610 997753693 772835256 176931583 979379628 907855265 245739073 464540388 84328816 86435511 698386365 336903516 36119351 590404109 223197209 850483660 890941083 94889555 520030998 403684629 526134973 776121608 711993225 250516865 959858490 641519072 882640080 208538761 110981571 517423578 278996412 158750168 95295565 29189063 288591903 776403051 627600598 552955891 471678155 237236845 658913465 764835914 460055770 449655457 141716462 513221987 675063913 986474935 477168939 829719732 199085791 663912355 530244817 86872414 844439764 493918971 577615230 36962131 312976653 862532471 554126340 707663222 189081384 241108115 154668916 567185104 615478104 106088183 793765973 481024288 346647588 764440543 920066466 704688986 741711622 705414265 395268325 905646935 305403224 55703196 614732452 738416776 179627184 424967234 342887043 467923445 720698185 406106938 381113581 77989054 704533725 836753260 660215782 342821518 827003750 348075721 934322565 681531417 913996724 153240478 800070682 498072837 105663845 935872354 707499596 656444836 323626076 464730833 176362728 656509256 150051428 55846628 649349389 548004041 89425186 182782570 851992116 559741747 958814408 562357205 136587231 204803675 268186250 148666665 168417403 865532447 262295658 625328857 288506652 467595275 604992767 576524906 835796305 122456489 195243427 831847415 993118571 31242207 629476009 257636485 877621913 439260297 106552308 754629583 83673604 940101831 964456894 813282632 864581410 413325089 539736449 677219303 491471166 534603520 982225157 323167541 721539228 284646905 312758056 72339093 651518625 680499146 223662518 38224750 480840679 747794893 298203541 627324552 29108481 199343238 414957556 305745033 117359507 912374467 894222021 279437012 521507777 390201230 529611745 819493420 125753974 832046123 576650483 126963736 396275351 292022487 635595938 822767293 800105374 553719444 982083063 355413848 716599032 208154433 982030558 620657411 390725777 375036011 832000066 349914951 558683400 549814974 946172861 43667699 858155037 122176547 450517863 486283575 741304668 28281967 101972428 826108110 831254661 916051137 204772660 80674466 264807811 560020008 569625134 821582431 861282381 259963854 554663900 906784165 700421015 307518543 20995556 595637069 554133330 791770186 87189841 895049830 41304987 651099086 133564192 495766632 707128662 850401050 17028825 366423192 36157967 974443875 726814687 898495697 332449812 616587924 711699388 591581623 19617472 574718004 710474032 318094240 69031377 349708783 422397013 940272882 941475323 869823542 211882507 365161959 311449952 252829972 245962274 871249509 22590372 756709037 736099007 677532243 835162987 638868127 757857007 738398059 546415231 853557094 287257402 876253245 363489598 209707078 628493226 20097234 907234389 799206873 977145964 619748641 54644471 343670707 859889729 643650149 708084116 55483107 32425245 997350446 679817980 867887202 500016814 384099924 787260752 550642036 459779794 16821910 548400966 644950012 939731377 906684850 696549664 179145661 977485833 951508275 720188365 27789257 371258959 850420064 142175981 438003230 105596091 923117538 313220521 997146199 4795801 291769314 430839508 143532740 793316863 53493659 565328282 747988761 368415277 267082246 953328096 44291383 75316358 329587280 230588580 102405534 71950359 166780982 877910233 194165308 953131731 413379559 698884438 401585574 330743632 452003282 594804551 522993079 180525905 946023281 338760308 451706165 243480030 410362569 59588808 244320156 765708780 366022545 862456054 715175075 452794746 515157918 933701848 232134932 804805769 773754964 648265256 656988033 328449286 794645822 426813042 454657739 125813645 632498033 374944738 99271937 905382735 548238583 751977679 232131264 39173391 224942032 620162493 927919135 193356646 250705105 829195118 237186889 658504515 576751096 892654341 193419600 160990362 663929576 741921809 910203797 145563627 330850479 137334910 395695720 203915333 903270306 834566919 492525671 191904255 131480534 180111242 581574081 482909785 189627107 546500970 111293472 429820949 180450959 820508191 330561668 858724226 655310939 276928340 115630986 91672405 131886500 222640688 409545240 608468679 169471591 634430565 903636481 8340137 27808806 414370122 92565411 38102064 275772683 494409192 445642782 277779160 431012687 878759178 804133181 215516338 911374581 641560902 985309430 747957758 776887612 455418249 369062831 591276892 540496396 864238150 297477992 181265895 616575126 696495925 537077834 652408814 406255612 547927541 736621433 73909953 304582255 241226178 780213255 286905108 741016264 959296275 350968623 174876717 608847483 280951923 346241180 301824122 755074386 266112594 815735206 425039711 776974236 679591511 720877256 379015453 582483358 57283305 935756725 143085178 134620252 856534662 478294479 319450161 766325867 883932931 313086500 536321232 84979857 479178604 405835660 93485014 923539762 993803273 536541241 842525834 610362658 878315506 552970631 354553774 173407161 357671276 513493105 191883056 321607166 395877149 969109986 904165132 322789295 849348510 879629698 661281996 834901318 536128201 482007441 610367903 768811365 249110543 948997891 560226920 504515183 332417396 390077408 448756487 24830846 832187054 605589920 268747514 370261153 92147111 125815623 67473128 377486795 213031618 819290976 105704179 432082035 247279802 80206221 996539719 57719614 162403709 242658358 834522790 453366199 837146227 389001295 17274749 916390989 682651686 462005352 802605925 64876292 323054013 319790636 280684458 600101991 813855039 554132723 831931299 504952991 829049815 969476225 200847757 320035782 923398612 915655228 199410649 977212156 496156019 28815259 190556031 644980100 62996059 936807341 945803542 970941025 55282802 622736725 609703281 263922831 568525983 663878701 729452695 52507750 144087839 269045521 296140234 965801293 205292066 391012787 465984665 80662005 196452710 786807488 94074231 807021314 850229845 98632168 627835241 237610817 407440722 33336376 918333181 881261443 762184515 135808095 925630047 189385584 297001493 174307721 258146819 66628879 847851924 695042228 977970254 307172347 680240999 263898254 255550596 387923504 734277216 621521214 984735162 112874824 447745778 843048454 16554991 488882348 492263120 165111066 797209651 761781985 674800358 116059366 128280254 587406169 230179093 104411600 258453555 692729187 78079466 963812113 724928037 192843974 86834495 524596662 400507968 300354454 413600299 645296383 229422191 586465339 75266815 472234183 184848893 53903392 777948638 637581211 404644523 921948539 258407345 143483430 86607993 977696988 60513464 263843434 339638470 64300438 564908501 725396251 877160615 910856364 294899716 568718514 941724416 857274717 743427047 813348486 838363646 807824842 256784573 870184902 907245846 177447528 993504654 58883866 145618835 271816843 532557641 721000057 553868121 299069734 992770667 642715887 669974555 148103469 54202651 656461337 367190731 459329153 344667650 468616663 291604354 967068567 946099523 801345887 405338013 190610609 198018942 526802093 408048491 410902587 757976398 848539999 817577273 333305889 196796642 481358139 354328177 879237361 16287580 48892880 896192417 12670067 530597743 909384363 738682706 3339840 915812058 708990801 375711881 8855997 678393384 955681339 554315417 288592189 277454240 721240421 368865464 219906837 74616112 33548508 231412027 154045081 738339373 988923997 27797503 326908927 380885930 942337108 450925119 312077709 80645729 83801345 919849619 171128707 611770358 414977501 930301886 604030668 492410038 397819177 726052445 671672771 147761185 582497532 530912184 94719458 68745543 506935072 456289634 616620953 314103788 231947225 846886812 322752604 88534338 244814978 658137348 349546373 802834610 974313444 626231249 951358531 662070900 587936764 343151452 403606235 383179769 578498087 550525821 442185645 368900468 967521588 36135287 728122397 948452425 399768224 62488059 103076008 127146570 662507285 761884140 695927129 734429319 741357356 92127736 725491384 593620861 640488141 957392896 110818474 292111318 264775817 521896924 787559842 513479930 791057953 601537230 139049932 317661458 639847293 955829222 412782126 564044402 226849231 832510679 93385342 360175318 825843925 55053243 457881006 351324742 658835448 694649228 423853505 297154863 286037201 375972527 450520639 23391133 494988437 644262981 43712108 781717887 975543364 521157690 776131587 339888914 957729229 740079127 824575810 781473896 534040384 269218194 426711907 446721153 812008361 419807099 355531123 795755489 678985819 467932125 53300256 327047640 566787630 870167586 368297262 712605550 666987364 371699014 20525235 563690795 651828190 889525512 511391964 602784124 74967055 776142827 860228011 950064721 839453977 894020669 371264422 461241173 672040168 644054081 166941091 221502628 338412579 871514141 405563840 669144592 580972288 720776927 842578087 55189568 926269209 88897933 140480830 928387748 731229531 796419901 188288298 956389960 16752506 609235697 407224621 448580373 468030430 168391373 767556670 441826178 761375174 555401169 775287796 598827405 717842221 967122606 179606621 913742787 91341385 239385219 842488509 6205118 448482545 449455950 295814469 821295458 568458083 595921248 633544560 97734454 484664323 110472321 989888070 793755591 708672819 848860464 857567260 315414655 770947365 40322860 212560994 362567594 448017858 973975567 680770557 635436108 927919358 418761411 646069461 443255452 166414097 339974730 889056052 742117571 777401389 28595569 428102463 726036314 105022791 569649860 936791451 290377085 625033778 323558086 691891710 540562734 224145311 724009476 966911673 536962153 361967057 150526444 440675327 13517764 687544375 70931516 256099004 848004830 276263217 108215306 208422736 528514168 506338141 131453359 442921034 559102895 566949411 397164719 233335010 55226943 315319322 357802874 359744552 117903805 170999465 647362077 514280523 775336680 188274690 823024436 760514312 297458339 358648462 985030232 805986200 826435927 698187802 867878704 521789541 245827183 636674941 964386617 508993122 301713855 568373481 243239057 914177554 499044013 577930756 466531665 576771324 443043944 770236636 759139796 545253263 579372149 373700582 727242175 36671102 587783069 850162431 190019955 432339560 255209555 758858265 955263399 787269374 975789768 601412052 544638577 927298099 228271486 185699797 128679056 559532172 868659265 543522469 423481885 711374928 688165291 348074567 720427732 791229679 393314522 470602373 139047127 645399170 234633131 502263285 49080477 909221170 820028055 788332302 128892073 209970972 634120607 24361223 957967717 637784382 262045514 191038529 50378067 61532653 266498830 377440108 290100142 483901488 883697111 367511404 701854200 742456645 18117824 871416731 928506291 380783160 658391553 908022253 641360993 104214056 349313247 491509976 10231593 716109235 407388896 946433636 459193160 499512373 312005913 491030972 57225427 510258662 980274207 437810878 379752200 227976357 586131457 164517095 277028806 336136553 573793159 459921102 51241562 420541968 833048179 991333227 20182236 715082943 469374486 311842324 939387510 284478399 576441634 573176752 405356194 482020314 248534407 292846467 178507637 506318286 593751402 470017165 152937057 369068965 332846399 119522361 536383586 436046851 374426190 142049965 893492656 422229047 992545177 599270557 333163296 481067668 708612197 170614926 154782238 429035196 434455969 532430889 963426321 736198131 836914196 771098197 547153188 246487630 945663270 277881638 217693945 980726208 725675090 754674896 688756259 639718603 685523598 447292301 980170517 688978072 151216340 884836000 916830237 193338657 857714534 240176987 334898196 332601572 94713493 961046688 125406266 222061408 122396944 626378793 537411105 115513627 128613492 54395088 30429107 353097467 267417822 404854004 188664513 301643747 11520504 740050911 308249546 638015941 789469013 532855599 834182513 427578091 508450477 458572602 548909263 356745908 575069665 981126286 343366376 815417118 867872419 589016165 913379327 959843150 728870531 134309080 386902370 824656521 957872306 73362747 704853275 865739522 257420174 897108543 908135642 847301920 485054889 614440607 720092960 349410462 938833746 586132572 85702061 648618006 919882024 872153025 952433095 659549065 123735406 718048395 921874047 333400711 764330833 372775134 994584278 263622527 471255704 994793357 558398179 105228892 623289381 87941751 883865809 448091996 823963366 583577156 62060694 427998652 931917486 269314902 258701659 886164056 828449336 675733339 244601081 213364804 546982754 779473617 250390210 796243410 833148458 745419771 87311268 552277448 2738322 292105191 548751722 852695835 782005737 863282465 144250731 328916595 14283628 308530640 37786212 488196020 796060834 886417538 430980039 652465355 95240607 51841720 716734478 977600345 648128580 53146988 700772655 819074183 582731566 175103580 828646794 326392371 877418620 841340366 964682135 404532076 891445229 5697717 442519284 542291222 309176760 869432277 302133206 117727229 168421988 648668730 496087345 288272626 383149667 802805163 151613544 977221857 332682676 481228455 586359939 84601777 712865598 38657822 266293800 905212915 421254593 856815628 679291219 803238465 629176421 719870848 532184217 320054401 729041177 775204925 895790209 821266609 91262936 338111992 641188827 342602033 474674240 557307825 835807324 694858143 420842537 440647239 153583688 548439437 239043943 288235297 59193456 613275966 424059474 841041772 298985238 133149464 821565159 831963646 294853072 132986734 889933975 197270657 207723211 235467369 135136197 645002781 89383930 52204431 978593564 851327721 237411174 880149567 255823491 434275526 487322115 576384491 965466266 515310411 405741045 862605342 197627937 197896086 411217236 477286333 735072680 616492306 742960840 599653847 340604918 509770688 952771360 466936741 89873395 705164108 573640238 271677727 182980978 397039035 242576881 372227055 926070637 386087206 83152286 339077498 303040406 830010854 609147771 145199698 58886801 656196518 463708178 335763347 452661581 907934546 213252233 981048127 678751733 494640073 906980839 572436928 167445368 679446916 857152562 82666899 433428533 637226470 149802488 6206852 881142180 466848357 460887569 788242663 243701436 98535960 371651183 730956260 619545975 600037156 377870521 984262241 312518509 741603611 18730392 866834682 237519099 154846259 901642468 31733911 302691028 660498683 514061807 948794578 364365004 37352210 845078676 480254305 161899339 448652713 851749682 775485227 857475901 131110274 671594583 569371932 406557531 526493638 235746144 218141839 420272016 757957728 292934849 971816902 783804252 644007541 188590958 54018702 560594306 472152267 757783553 976307687 641862661 735473711 449556259 654761865 324116881 926784859 815938936 418627568 960635686 164822827 821230911 480545672 199287575 301371201 894054815 878866191 576708307 583021702 605236866 482886138 55821635 595264086 738259499 877088364 837775457 993187813 876455166 475776417 253953863 960479680 125342741 844704122 984952851 191386110 334768198 31656046 124098958 598102940 689777343 394803034 82214598 786985407 473277205 619483846 212577682 581995592 8045654 595271106 194411436 306950076 284722459 512784751 471468454 62107236 347789467 326467532 685558983 161802365 419187002 966481125 545590992 219750895 749549457 333717276 871559271 253701048 744776585 93338025 453310701 413566583 71704904 987214210 913482477 344611418 288142635 115590121 173243707 953967935 339856881 30004647 648743542 783271005 715164165 371535551 568589586 52649208 773661971 691452765 895062705 727228907 398545735 751635098 421174984 937112868 160801294 531568357 230779653 409438175 932477846 74324626 986455969 684372663 598460627 679478260 358523887 116658033 308033408 305719396 731236444 369796270 743617142 592210892 481687696 655513102 8569349 984874557 114997755 444489709 823175185 504000371 15280097 329554962 15280801 71468279 708269431 400264991 862918841 513514608 823147090 396094505 680849460 603301200 863932616 228228194 602934698 668947367 861507256 914829702 220347822 543898220 889906283 510634269 91638188 194739759 870317667 657612714 880453539 113660726 485271674 623313854 127798170 728138003 37974485 731042272 258279815 540996575 832811171 243735395 651132963 983086111 498112643 948851195 944513651 655855852 728691160 453847275 297624110 225613378 259571836 203192973 159256764 386929631 890975186 982794973 714015489 3816247 852487497 942598634 413783468 199818921 269208238 564739674 740440683 956349035 994729226 859891131 560126819 828169684 477384761 415955825 821859167 132285435 169758465 321276470 59670099 690120946 175364787 142366829 260988244 796440047 410040434 80047195 819746960 147875606 997166356 301865323 183191404 473827771 953989429 194501018 305256509 683146740 480550502 217422687 947951672 998789170 894606562 821004063 709061419 952252116 793196605 594668781 285499484 98354556 566284627 472773589 629472783 123935131 876499671 314750587 110187311 78501312 520107947 291734250 809906322 613136764 349574725 830187663 110438764 93154090 821895833 79309146 833965466 126486043 117912308 310381695 676359605 118330475 12333490 341535894 632316939 869598259 473163866 330514902 466935953 503032724 960061198 4190394 194407757 686496691 821231267 584136200 500153315 756301316 952387010 484907912 303493050 607501648 688948737 563592349 526402477 304107030 936690329 413884412 622163368 427990427 4310663 379597256 423196208 306586160 13336679 585950993 293410565 157666 953067957 186760382 106498040 301235967 64759640 89487006 257269446 453441878 793318532 603840034 541018302 330428044 500761223 363526259 195950991 652437787 686727937 3619944 19003216 203575421 200317237 94073900 657039714 209882228 155864288 676842083 521573751 586004336 125887826 275510451 176459897 357136524 325036172 709503228 804252572 102961381 90502848 805423026 959979478 420751377 639315515 169618310 78688033 284710062 658987644 287058889 397071118 256152324 458295162 717165185 560975177 440276240 540377453 552711576 90830587 96998447 338241325 288120579 455874085 289659736 359246208 191810835 517249841 320366020 352540658 778715591 506112646 436188348 698180923 612660526 18121515 758412002 851406306 537539732 946627674 419013256 958550267 431493317 414393834 851864889 53233205 336416360 152021842 520728617 593973664 759637131 583349276 643521369 940022144 831206554 300780060 842950161 992885162 48496441 812214093 556098270 505862078 523725354 345877744 868702068 726121996 437730442 893578773 106721813 890586293 849115839 511390333 287575728 564825086 997410275 307132762 453758683 18017101 457525630 469721678 341788651 984783273 641535838 468602202 296631576 657475021 242396327 857576041 216803005 50995487 525524888 838491993 373512804 165124761 387303545 687504544 20331017 290329102 133627136 336459014 15139277 532863320 701660686 957806256 155182103 740050823 341651121 473835168 234738453 762471585 634683613 44048116 650878185 733066594 66594782 43548365 865346517 53288264 619652031 606324858 681955969 875284746 280622991 714104020 575465249 55192589 527073910 863223392 343257124 877889695 534207562 391846731 560889140 628085060 949691413 869455040 33673805 202930630 166746379 361270889 693959326 780981120 539181349 1385244 565777917 462024919 142908624 435103469 630606278 653607169 274196047 730585383 230669196 883793348 674084089 221576458 293940183 939900068 888151559 370935060 514263482 620185614 858604250 477599557 862712661 825764141 172100757 956156117 856324004 692108454 901408692 863029765 505403684 172148643 245607505 15426758 567735478 870947235 565316242 720243111 656397885 172059525 813391019 976898289 367368566 547835706 359847103 357529157 374783483 667205765 425802208 876716512 72758387 111365558 409794599 347013791 769688986 676102636 897285529 272135215 434061559 860493500 866059196 986804923 66464652 56105243 436095373 931594477 854203142 400872623 648528222 504070755 742555059 289342012 5911866 598550648 684657014 346886457 705738076 302355485 895640855 329850668 178207394 184478173 76330459 214618452 824664993 177505671 277200055 720238342 925541017 527004159 137653512 199000597 850062291 345908026 137099584 123142165 205709174 937805518 663005307 309337435 619381034 879444937 249346102 917863355 507112933 491125053 675055973 481534560 582621211 327614316 28928185 438034446 949687039 175387269 307952760 964976749 697742694 906721545 852643877 112663390 208608460 467362967 264720043 172578638 160678706 857327046 49735857 973706956 228516157 429461508 380678732 545544188 51788873 406810238 276412845 946891947 709887717 408243094 994278237 788761298 833951071 184154812 484318850 734532206 917337244 119886910 611941632 828860040 398126603 23920899 40837893 514273263 363890756 383669884 692104200 44656724 123157828 181723990 46743358 218266128 490841352 853691990 72469739 768008609 894959661 121754813 339089443 712478667 260589870 690408054 556576919 656928171 564011822 277231866 49630612 378472239 305744526 336377295 841602112 158516868 764128134 644133699 193421906 500016678 814721307 857493996 176763231 480238253 454717995 641833557 476207320 789502237 671754075 193806855 644498669 353118061 952511388 910566860 608220818 587129168 405724123 478766665 801082286 177957354 600933988 588576518 765918000 803332235 25021244 87852495 922112465 418099605 992308074 602355607 636384667 715135210 701184870 740335765 941194137 570203184 982986930 85900913 595251158 800637599 297865683 763547694 58064101 911032019 310283141 79880987 331656722 953772359 631453519 438681230 65750737 838558154 850861015 237009869 467128366 5195373 700786474 771860079 707562704 132044876 429953354 191182883 104760713 240052819 129826453 338221014 880030240 49610464 762776947 52017026 777391377 897654855 858990491 204990603 985692467 208787891 875657312 197025036 477092743 468369730 121244194 770705802 371510492 610928144 622438012 270997720 149576350 308346067 927113144 388777509 597567091 218328834 787038983 777336977 593977029 256597693 35271464 299674628 964215151 65718636 247039773 629878515 822505246 337413923 719690482 920801366 894574930 511118385 223689832 702956053 818756978 858872005 362966974 545805178 975671307 910904610 271999519 584858394 69911686 197721104 973129321 454596495 163106667 588732000 612752114 100069189 297411156 6797774 631899103 417608486 825708786 691213939 886914829 201326272 611884228 866723815 943625385 335808118 459590841 961024080 79049585 808246372 267400184 932885058 513506231 428918893 787135215 574286120 722807143 208118962 660256290 307946380 913962972 326767015 918837102 748124099 397037304 218318166 502959965 156246980 884044513 447853611 697249315 501256514 695229684 473518596 351266166 623761991 671827917 294478346 774348195 785206967 93246743 430722208 466028709 524559234 201831490 352342787 131464830 899195652 209047058 539120392 79787310 139073535 502874576 932415111 444707444 392032786 961686964 663221231 859788240 999951775 316312904 958262573 284173189 868708304 693910238 691224531 376298029 109579564 862300985 174960355 10837224 93599234 585705879 129716564 746751991 327479886 417142905 456942560 654997158 915120598 254795671 274652041 314240790 863288117 392512450 382974249 559970464 837430882 925687182 305976785 338506254 651073728 353320500 785295953 600795992 728482831 482341606 161557555 812806583 815304566 768754802 79019289 653605048 487186114 457673114 817562095 126774608 576313514 22330446 516831381 477958468 217922188 740637253 867563307 467496724 356716880 282396237 198143674 780542559 947081598 176007679 401773038 253969663 786732080 5984567 600882540 114654446 588188025 365238765 386971658 903486898 628055504 766557984 341522959 31441383 352887895 401740462 267319477 795451083 52693348 821867031 400528185 933264529 618119856 828937255 895566142 768673802 594081122 87685562 807318092 952460914 844813677 740678015 418488550 309272265 44354036 427204443 736186854 869774496 290007642 429446645 738907301 842183014 625765049 890252964 140301387 350770773 892831759 319423120 43759908 152929619 736991757 798769565 595937869 96961170 930639283 485933582 888846849 645046695 986591651 80633056 691079234 838244685 587202603 351290088 884567883 80120058 457538432 461231973 766014809 652116561 655680772 638102904 251992906 82043736 1270549 560554958 650270136 186659452 299181581 4046439 525379065 453105719 406639814 239784336 631459490 131273304 298784575 614208311 66050414 730547569 69775667 923190525 978051071 563224256 476268729 518519176 821774450 478439486 262564850 249367638 290799971 752842750 301813797 479356289 682986488 74793886 140179569 735727737 522173396 744612323 710770894 238454162 321745727 600802818 346983255 7119858 193913627 296755575 467668393 850842937 377001261 716770477 761983879 561921128 300016486 999803990 758468323 737807396 611158128 786172043 905901786 187558517 15790150 625408453 244347178 528539240 329018265 767809823 731776980 10478655 13654436 888521492 266222649 149472809 632293172 277929252 465070098 857745723 258396445 713537143 365313487 655044738 780497156 213964237 852397346 74471612 420972760 269924710 101537896 84580626 875640991 216884993 865562060 650891523 717168640 452428649 852956320 663431370 335156338 498631445 842835413 575136073 770545157 778431271 8903463 894580400 14653404 683236302 373220506 455920850 65333439 506028890 741854154 965178111 487943179 578773569 579538414 499072059 733095637 913883730 914227457 702972517 461608517 702836643 987127430 699525202 258948299 273014396 312906314 178023376 637529913 234495716 174767961 655795641 895649866 764487528 209600835 785060118 11624756 170988721 10114542 134903674 59983705 62224675 940569375 578096745 210474855 561010123 910079172 610942408 739568925 103184283 71889736 142538511 223592389 38972082 19293311 650252883 230149601 913851441 74644151 647328197 534762083 121040014 38221199 50271530 563867358 402524849 384612930 268666281 118870469 417737509 551436577 247510409 539689125 687447351 576972282 476405032 211430694 898039868 457111816 232278027 157930155 536490104 509409142 965436044 949606033 511224314 96033740 791722272 101296493 289485758 116721015 868342887 145445463 152566078 492524071 167160878 523730793 902951193 984175702 452425758 105932789 285620567 877727109 435183718 814244218 833981332 63151154 681661023 923784681 960441841 89060099 654701197 232044090 286062026 358623256 830058720 885731803 506707640 925929901 482554333 231888681 999367627 74571788 717103694 20228748 908797496 210715727 772208999 726228568 557997970 650877100 681622142 789587187 458333455 928467085 281132182 692841912 519928243 427454582 927028598 225083636 421044507 222927243 4201601 329699989 573872487 237053002 303512482 426678467 73375372 117579641 46581731 649825674 163226726 114172350 872193774 312383431 508013413 932759113 4545791 685077805 343661225 130296295 628805100 961892824 814918071 601393726 729829044 744489486 90129617 793544660 515264200 152733541 240009762 3258791 750442805 410483776 469148954 22355288 462106497 902286961 576123194 360475940 817093502 789258975 802930543 906139562 455860276 324994688 655107780 583906603 973412595 301362829 387987567 231022898 634621897 869585639 112986407 149441314 417456418 145734703 322730967 567557556 156604241 567690176 479748772 571997895 313344200 827108202 170460823 371829770 865998771 201756618 805911136 25528858 987716871 128867565 454643704 757937956 252216932 1690965 70722822 47246609 915098741 140542413 315583046 620822561 392375557 403786277 890467273 552632473 46557167 738327890 663856086 296448034 829154673 233923713 652656521 629041604 794493954 274557193 238178719 115971733 618981860 416309518 8243297 348408415 206983805 263254462 120056628 159149834 287277593 363740668 740166459 741863672 62636983 978719263 544802981 192701339 353995638 814306144 938577229 964595883 115154313 515300667 947249402 830095985 723734218 959222461 509602065 337773247 596096783 35835757 894073918 222029892 574439280 740014498 59010443 112854545 231152565 660140545 422509526 10572926 33099846 116952559 941111300 124854150 130459083 552053874 640827750 709089752 405934484 104745802 162307809 591432307 450375105 130566690 501525969 515064807 268791957 804866019 80536462 551545298 776832694 166169753 485534189 243495368 984467498 179354668 445379051 854917045 303507357 992795321 115973224 442165823 476065441 396749215 201359123 235957509 14019843 182900299 255698701 603231044 922234044 672739321 149856792 843876362 177425866 382346262 421929575 149430495 321677798 802446096 809766090 814016887 167911134 509392000 486751998 72289778 142843407 576888526 651251701 264032141 305966939 93696706 620763996 819247569 508257075 897354653 960667489 673891207 919247618 477727304 485921841 606961969 343872163 993486024 167362883 505549328 19419256 515401538 454887592 881906379 88467421 632263124 82412474 586884219 801881563 367689587 592460187 600761764 154334768 462366834 759314117 459477356 563010011 7945697 764955238 919915284 419643737 515261339 871876930 719832899 621307928 990414178 172016256 301776746 897363278 797951876 295211781 361384187 756076613 781952906 883234305 164910235 584635988 1634129 179698198 291817064 878921324 683614793 204122843 615578093 485412028 572813562 185759647 846376679 412206761 163814193 205111088 244587305 541587467 807382867 245380066 839536298 733157602 762733353 309913873 101486523 258427909 492971914 934056464 773060722 231449546 983441388 105225196 523904819 360145802 990223891 943348021 837536991 765053987 654646982 449192688 501352950 951081799 827248473 782357696 429485893 139829196 123412213 480036876 264210326 687814044 359131567 550858362 158362838 753636250 521502581 196232146 13605035 430765045 354311665 609753134 795887637 267545128 741364743 167601202 792176918 602958529 417801371 231130131 634250245 311331856 14687457 208005371 387644245 235591816 779320516 48605284 750373729 673217707 947084356 790410807 559405783 779164078 986742 744975071 162213555 885240702 936741585 207213925 432850079 920001393 870547242 91438483 447441239 55156777 498665243 445533811 250833398 231860391 904235064 313282122 736258998 57923660 795370952 865124767 523588460 952595426 662949435 102726268 458542242 226202407 671553102 664929167 748400256 258266940 835368715 843666766 153932433 818051867 378256019 253432160 617744473 830955939 540609033 827808559 157318239 550235894 291976717 308094182 968913818 604582375 619328652 950025469 970751513 376020307 578248516 93969860 33065592 337169584 484483712 2063317 979781584 285787127 988573886 880500606 650749407 863497131 986349440 461027380 265711955 370236970 260539837 447532361 133772242 306344106 891014507 521093001 977398392 640249995 830341455 471036873 194801969 718374754 338982654 189321909 635893979 936756479 669265698 584083188 164260794 603977283 343489525 735558061 57682448 500874778 950247702 557625847 626626448 559500919 941880165 159553320 28682684 842127692 420469458 390578500 586005371 373723355 970693022 491368191 829747561 507472312 12889173 292076735 44055949 196347993 854140657 456271746 234354454 209952934 215605527 455082275 141769785 344887031 630044119 467630589 869213785 813620041 914341347 352782100 325114890 856589782 642616201 119982984 701920858 48106857 9979438 254040615 551770708 739360600 391211023 873596826 339857014 304696421 210141333 326985082 701611891 603436972 257873196 947692067 235625119 48173379 549788493 289978775 606486237 483770048 717481081 304260314 443461942 101573913 31469020 183273400 768870110 520396576 970281699 397372969 924562605 764018997 861054875 532477710 301046794 984930417 710956684 618089947 327202989 599575264 332949707 58216480 925545001 342291753 809748577 348695814 98688602 80816705 615616772 560231994 112841359 115508230 573862833 299845641 283557965 290437567 958911371 833378217 703597650 697869429 673952825 287962576 131227387 82024675 380388827 159065676 621315634 100338271 546976438 266890231 807235576 426017834 488775013 299455836 499875976 34689100 712325536 874650271 572505843 459289075 397865730 431757030 451904503 587088158 762543180 842311388 379124249 603949669 791884743 948536916 288772825 381950778 862372635 406502161 47083860 289429386 676636174 874883446 212051860 39479145 251335711 612568230 964286812 209315160 319473207 963817849 512576207 716024836 503672595 997325013 538620507 773369542 438705664 733637183 249723258 23347660 291356865 1808224 564613674 996200653 149137457 580032054 383333544 901821091 321402158 912580264 243789236 982207502 353311617 230031796 41228546 558909736 63661937 290106918 108921592 943086255 851010451 273433878 321695353 972631654 791880508 579904122 764258909 349314425 186086459 715963756 232800054 253255386 277743365 287932717 302706913 426256712 985982310 10658298 219741021 431476358 874061146 972293767 756072387 471073470 240372985 338184160 190492976 442285603 891148148 279849963 991525571 621355228 619480043 552196133 785419453 469287910 194675159 208027543 115003156 371723564 381274302 339811174 465726571 44949877 820877237 952356469 573525003 151322924 282120115 199576717 619825150 429991066 41957019 25995206 466819957 5321395 4126654 423130940 197281391 423526602 858348606 377116981 427171749 992925863 458290789 579093403 100641318 939628207 785628849 406508959 358710254 574530749 851428457 37918083 579256075 890639588 601206238 609711096 226178635 888962712 131552820 271726956 114695463 556470802 719626323 671831761 452051053 24983557 108137184 75708173 72558683 279091 282494139 373745958 447440269 505701677 260242919 932505805 353783097 86465993 956895256 150926718 576387607 924972255 391120507 166315271 486582215 939436611 423683695 268094515 341210242 496877704 775684723 857457500 579838500 46677116 742360595 298905443 839582889 144857462 675245318 205347035 580028073 798383138 842251856 436623011 102548003 95758834 653577812 280635951 237265802 512128799 309441168 997505198 407206996 583957197 942034725 342783249 237509834 272706244 914365526 186770988 968317011 351767039 645368252 862243847 689245091 425702050 235051566 622053675 410383715 629103614 660463533 697359229 85994499 748955361 536469152 886916860 420766273 905299125 454508416 992618535 254939450 323904965 678729228 238811884 783944123 194406097 423100697 631855406 862863403 51844372 621506628 399893727 639285053 940641774 543192272 885442760 939059649 517254365 339127346 535836105 998879920 502441236 268952146 815174024 347531438 793766713 514673974 391805466 853964581 595125565 476415787 181904612 309502164 82071852 824959071 719318118 373719165 580907590 134045600 398480285 688193995 86682847 337904156 526741321 168112255 937240820 178469254 445349858 332278974 433004680 267800786 547662657 542586848 874317859 750698493 225664064 194920973 574689371 616530487 118745065 403522141 603813054 150109438 494472684 81299577 333168384 481507126 299952462 401356000 464890235 948941183 20476399 945639877 236261463 99950666 670901936 937880208 635469799 102484258 776095168 685849105 647512077 969506224 717722205 153517648 9507063 839906597 108246645 463545937 237960921 20729226 11229875 352678449 251524614 73871056 14190048 484708882 824696965 574841769 978914233 258486188 916340956 859572208 323082884 260397992 204877565 794120301 522104396 437565325 6490419 13788733 916754779 65631924 25094317 966023721 41681987 198134344 775835127 111527823 934937760 18229089 808876104 27318960 594883423 623269714 366390666 960937794 780996328 720029642 749515720 801256373 130982485 991669048 413906254 178350035 90959554 637528805 961370676 637092822 445381344 241597708 815043331 43773831 18444686 232468144 899488309 808744923 100645689 342486418 299370958 589175671 424149841 698388337 652903872 660863092 270680746 551652393 414309697 114854645 63973257 815278526 807632267 160454751 138689170 182381974 835418715 268543617 437897712 452489084 91032045 107494867 443976837 866171383 268800387 141949697 278151631 194668185 427550012 947132325 191031603 915710824 436853442 433743515 327639053 406881376 585460795 829925847 957246458 702627138 569444293 805289473 819835007 415069385 939409777 330171432 145809206 172413256 663926244 954976580 511053284 342522563 444544479 16546082 294002527 483433113 99931823 319928298 216062191 454112534 838588221 327731905 880305069 376649416 926399164 307454589 827105473 223417710 150317632 274455848 240123489 897729394 579123609 929449239 523286589 919338909 799899022 560478785 669397473 31722385 48363463 489870951 481379558 582574566 555181365 208023713 654207246 372583722 609167292 422989693 237952719 677099585 828930487 230849227 719141086 856183157 125301412 42420516 615372113 799408072 946871898 604104537 493066428 865844043 588147776 922369284 981697565 183966676 351831729 83093638 627900286 263963306 732730513 792494965 301050731 238281917 553150827 248886164 19912741 166732107 29449913 123625939 359687744 612201482 718132219 415412131 765523439 653949319 125550917 7164724 440246993 301002395 522608307 718622613 613586896 502540776 830683444 856843610 623261174 736898743 213996769 373458439 84316807 902754917 555182819 334662949 506953363 294995111 760038104 972421645 255582180 106851883 700596187 939190370 737001833 610897056 279913976 812137494 112309845 697098326 545472421 546484612 758089525 673892471 7050796 193755562 97188294 676049018 143334840 11059528 232467893 406893774 998899233 957721407 588702721 6502083 888137981 247677901 856227605 541085143 583337611 281996953 524125660 730214145 614777735 573913119 771310070 834105439 675033775 671782176 791100381 386382633 705802390 185633902 371280500 839034314 680569270 252560817 422874127 232502176 680698343 433123984 473420297 759346721 379795474 517654604 818255054 785470164 238743008 753251137 952636623 642854864 259679648 748885730 80657278 487829000 37117088 318904491 302305425 945484232 602591373 274020424 899770051 37900659 318746349 613102135 601494862 966638387 487852737 729626725 931777265 138191530 869899721 399456862 527864554 626062141 667634749 926635725 505505608 961761397 416281262 928158278 389396730 926836272 918540825 551097912 377016750 508102472 970782503 923217596 924779359 477137517 605787362 399580094 266588852 944881673 164524734 770036623 405600794 814134659 866196096 153637851 936213809 111580276 60678135 87805688 210727776 610864432 858737529 860128326 37548740 231705134 304691245 680932730 933319633 12751742 321098291 127975769 7190918 380277910 560249163 424992076 783414427 528030516 932325323 665228632 534102482 584246644 976471659 622710486 894074460 528795190 460489774 812522932 979763183 405691773 170714575 307958706 150571090 7365535 752550297 298702831 112836335 505363786 347809414 113162181 259601140 689538866 809916803 111539442 469864839 28466347 606594070 962038818 409808872 456780603 732470652 395705532 309828610 26095479 34761984 78309972 711398579 381782236 43743835 229740714 483377671 385740690 663002882 621928977 215760912 786543531 882968544 849337431 196820662 332410336 174433914 188524023 604995234 914352473 674570611 881005940 203646999 182863948 20519077 811568405 234696686 631263042 213843014 383986664 337359812 730131192 324711595 251097297 204899602 321758787 540447614 428005676 899140209 278991867 633119688 872161315 837933889 972265156 867767705 759363232 754426614 892455643 993600783 619325320 309215422 61555033 413751278 100603385 475153846 284622029 139782338 318679658 415761100 543355450 534427194 564408865 603161494 921824818 642262260 200156863 340248270 798962537 296793261 877522000 270991622 635642997 135865384 946956616 891080014 499432471 394431338 305016694 885980868 478005601 86136181 790935398 153244584 738862107 178086433 223396143 779158364 428927265 243681792 890350553 782905904 15817818 637016359 543945484 473695925 422186350 526152534 810082943 126294449 413280869 345913312 927351200 418343319 116994370 701380850 307809478 239351956 255982349 170532142 666493039 854885584 49502465 137768374 790436950 557043718 424170936 729874614 137382354 910716975 111765919 75134793 53738566 851579985 24770154 775011679 616652879 51934445 836251157 409826499 968732458 563843760 703384563 704468307 177902822 566254888 622941878 939595417 456475089 161271963 52945964 15499777 677977023 457228381 840338826 412070704 75712169 982705703 908482753 266755354 685240894 879776287 371973681 493900252 449127012 611838648 742752191 182196796 527585715 288303316 593378414 262297727 477729204 989330159 459241756 152867614 149963842 501614641 563630649 244732718 716567080 165188919 763608489 529863988 711248905 158189501 902116088 706333166 197235794 792720903 797694948 432161857 577447443 681797045 812049902 187470717 491223485 70241002 655237496 747527634 463010463 443621954 974204957 23246737 480381145 488578171 355968811 959060906 798029837 447851147 286938228 67231492 79458186 388234246 324735743 445606520 657118495 50476899 655964396 93538571 700161112 827336744 304618412 617495932 573054712 747277710 999258844 776673869 466359555 969705892 898509296 906137130 514921812 488101844 180346197 737288266 937819001 582484716 877432643 494062297 479536293 97418015 779528603 405684212 347688771 760075196 772522899 231500579 162775007 722165964 991772119 64238207 338436743 117123770 909800632 774707563 355983814 397194836 212252651 305876081 580523274 965859127 166245949 325339262 876664878 551058644 825205691 558121646 569991840 865943149 457503468 549392585 329089676 705029401 344319245 830787543 849883749 784240838 679864159 279815873 650888530 590650734 605586788 266245475 166832666 590297818 310762697 687804054 813250258 961704192 844411060 643021267 319709754 944951491 194573559 942556703 424667245 479074429 192738824 539956431 953511132 398336893 593479011 313410197 648977594 121635314 787561365 568435641 45847104 982562157 161542876 144455701 812372920 6550711 344411312 892073396 408782186 155920463 330025665 762570626 498095059 622626115 742263374 379617220 744514518 34720153 867999238 605938214 426715387 4488877 235367019 417323291 849232051 286115485 336362149 270650726 840470652 898499096 249675500 691629311 307535272 104941361 824075380 181233959 746732598 351329923 126267240 300001285 96309731 278684859 473206353 171327493 613043301 669374080 110713014 811066385 376183497 122226365 254768962 201521493 163909938 32386143 929527960 688593601 721032874 153216637 234770657 91832778 877798563 411325829 64686073 958683106 742652039 115676482 718689093 440185246 155028701 328348399 851951890 122286029 978669918 405726779 849732182 757316646 433204124 245899858 824761839 706905426 576579762 536395258 288169493 428327138 781675827 490376794 453027885 534586487 317461900 912859779 929089814 401518061 58349303 410957549 345124956 124315028 393928357 713639730 941541944 524216390 183378592 438359342 797090272 672064470 388148208 733651860 510403961 484308528 493186455 137500004 351226394 719937912 715059860 786082880 453340551 497286127 219559889 874462536 953421476 355865219 126780458 16785355 319724818 73193504 513000165 926447206 740596073 848126553 480286320 436326000 115183476 543638533 288333633 58520360 786708674 504716507 227920839 450789628 440958537 266839047 32462882 516316537 291367178 928619185 217243727 170636847 438524685 328869745 250290794 594676139 264632554 820322520 495623355 160021924 564575317 44392902 473326898 52795289 421949552 686793389 31588470 217856017 660189558 235355584 759593399 15617338 142398232 837824447 164387396 143400142 982215972 19753020 169883579 881289225 359507395 255593570 703495573 390100666 365968269 794096504 587366015 45772523 633030993 725102119 619528102 775305697 154056227 510195480 421942705 570215074 241822113 282827747 72996883 340598005 91522984 40278226 505556488 124237997 551985056 351930866 290016620 953406501 277029482 141535116 445922422 146357071 100086197 911602511 118281757 131064711 36891986 621123107 959148992 637792487 569978766 296101688 291909746 886328122 818957317 367909429 531579345 74647791 121962348 823549088 500050132 351986667 190282626 295989088 790353612 277465184 214651434 413366583 352117017 144231278 985636524 231039120 676323279 930877472 396940176 268297272 49169946 587978942 613066584 71596740 630103624 690289496 196324428 676424946 966291526 991657854 912623318 585830773 788285373 492576382 346199328 716242808 57771128 151303530 445810886 867531418 167125660 220089801 666121788 161169913 277866445 630491157 299911197 266462383 680908108 187327114 940880695 259469136 494425742 42119338 769940181 300241765 549480166 663692759 189711737 658824527 977977733 228764269 317100136 24580675 498024052 727818817 478284234 340567639 286550304 631383872 268457607 361549129 656442331 11168025 978734140 595442313 950254792 534524903 882947782 505214073 934724423 499871291 875470119 152422615 774587748 469431517 936577260 341462132 928881110 671262051 727590154 854626314 580153863 513333182 752201497 561905315 509560354 709652914 346130057 903192885 165351288 222930668 197751379 597953620 439931809 734894136 889311112 817905 788330153 945847221 708324384 321824066 901734193 356984579 779317770 378613983 861482355 308375566 366505588 326483695 336103096 425649877 33717113 238314429 292117343 477057549 212182805 112731733 306729867 567225902 416816719 20058133 665638651 100163140 411598268 42243137 738807471 196255390 383200294 846065763 85031794 221894886 932753376 150774520 378460653 903871060 747332908 796559729 361665911 754165617 86470626 375115112 231909815 374702188 49281517 507169860 821674522 632824672 773085663 680005851 736798439 470300923 114635031 866436083 46240910 31854790 905792034 565081353 675045583 671950179 798581586 140465426 89374008 839532926 816234654 490147528 613542732 195746809 871023536 410783147 891865716 348230241 689482475 207066648 8129405 80179768 997570227 961095194 701886690 907459253 468471416 302345420 930855120 330403123 661193729 531663338 236634545 653086606 103533831 673768308 455269490 625507280 560630714 488978300 457208752 457332346 861351890 451862681 947770702 174401278 245755391 354877824 8695821 144131975 699632556 391308914 1224145 425175747 21354026 118957247 311412699 112146733 828842330 407867050 773437500 541345359 135466716 577294242 108353207 867740408 418450773 388578472 312631632 209606641 102064213 914971178 429249849 110051033 3095311 451564778 397349138 330087290 845189072 198508992 415716440 484448900 760660867 598467347 795482859 496451053 956003546 714762347 801964223 896258817 78513634 455755005 500438864 950477094 250355429 367385112 138410882 805458593 45094834 315744506 975038575 522034251 319399722 526777517 23694946 883387205 120899794 791372781 406060039 711398071 249326719 36898433 467123128 643665802 535486215 317071920 185396391 979851427 34934848 831774542 376221621 523607934 494809546 266364789 586835450 529202586 432595839 602573138 302956334 346147004 506081355 642748152 814756786 385687663 433642841 759609019 114207530 698237287 474344505 855172935 19479122 251473615 566355690 513704740 540119623 466230484 53704826 120027281 423882632 754461133 125130975 597795235 568026830 191647379 792404240 442858410 585646609 861417862 314550232 685137159 105646085 443409819 92900152 171847545 409192274 171293004 485587663 356636189 107550648 494792625 355390887 136494793 935866469 428049350 262171157 319533310 221658675 256159872 865572997 672845253 148357826 238971808 686937691 67801372 27506312 4983911 795650252 68076880 596208545 538133580 652824671 473807754 760747784 370827673 568154855 985558234 313022644 618356402 227455058 159546690 775146984 966402444 53927950 837514066 374718347 11259516 514213209 410150259 465468023 805006500 319378291 200811025 459394254 501115819 228238472 410167428 543964110 365543842 969260882 942715691 112560354 522528989 219135723 749940163 863797601 972043964 751251330 718531896 712427067 453705825 624298601 624414226 786136448 13554886 280611972 292490734 586675285 895963753 237645740 351724548 767694214 31147603 598465922 201216071 723963651 782680432 647120653 803545968 958663109 284652186 454168296 634075608 993375674 37444818 462706789 207553350 782851421 44765988 870539367 109537927 463378729 914358804 225850919 312310582 40957585 787226212 688099895 979140138 179895213 379348727 189400820 101871680 162236618 3160341 761390594 523228073 866152293 91756328 536240103 59725457 729579402 565847148 184346930 744009693 908473145 969720811 975697446 750382593 708465431 152969074 934082669 982213329 622531515 97006469 84445621 891804568 980559785 743433478 113525278 801187249 290956696 674894686 483186932 581904013 966230352 63986686 923057303 413618234 34068282 729825164 316797874 813834131 3908335 752131329 910324869 494792189 99957620 782337670 119020686 978466406 376511204 562305551 880107355 108790823 313651425 536023150 125990698 575483805 293374202 264900322 349183638 336223605 829992858 634954843 923893263 76000816 37288850 371450702 984960591 481338135 565482446 62461487 236056899 404703536 572172327 959298460 838814376 367813420 904961105 5174875 633623496 232216462 316607875 500045940 565925051 207235921 611537433 220071193 961750668 286890934 905887379 546490849 592979154 262718202 87889388 146457852 820300593 414458425 574448720 95943515 152948634 138272011 477257552 788545567 847376089 359433037 853545149 562710804 290114511 402696912 426048967 369227526 78222193 493805800 762894801 582305545 233254813 730897409 136312722 450518851 833937367 672510922 416169268 784281671 806361855 376208162 87022772 771495995 891409840 902258219 242153045 342150853 730282732 91211796 460160762 768647237 9630640 577086221 220730513 921643948 42175013 507703973 184078113 207798302 661229724 633165686 1493942 494519280 607265096 491560878 634689797 399684037 185379419 890710228 214489319 726801768 65527987 718028619 756810206 610971748 323940940 737282748 80680364 417980077 145925952 660699108 967198190 895975496 194928256 304210153 818082753 609856725 484278331 99316754 371318211 273662835 548541778 725271757 674021355 403395679 409581076 641386038 271299784 158792356 734535542 451531650 852353221 77244917 143202883 560949949 887819840 803397246 546452932 880792134 607338710 454509033 620106507 921332705 364505827 237450596 294043911 797903595 161216806 826090362 434927921 611720570 171505306 868258466 946923437 502490514 419742556 922177335 629672058 687168810 999428028 543811826 371545274 385720497 665650038 890655064 726061173 608375407 461891661 353191522 341567564 468470385 393115570 827254398 541192151 275720194 70988589 177266551 75645791 645691942 708366393 885754191 591362327 375329437 411723759 403058515 825649275 338180658 130908812 499042041 741261560 456808569 969664846 614887881 185520684 44589697 466666597 725517823 311735389 520254570 127956928 877442394 395632475 147780073 735634574 980351645 417910164 377641941 587104520 702786543 219142322 685019541 568902437 207214609 299250972 959225756 350160421 516955209 649219403 262716062 643753449 293392533 926034429 108839097 285527390 811017647 380916927 287737783 771548404 634685239 722651694 301792016 627485735 641139874 313596483 715924351 53681444 917006440 371936715 410160934 915280328 219536800 134804270 228117944 294292008 547250158 366756835 265470636 480345791 611314289 800019679 327201600 458441884 440754226 324305951 449207438 927962541 645361126 164981608 985773714 704115239 930212548 674561502 73892970 206067170 852981944 739528170 152321199 587304940 760470541 575443865 669397631 754445253 550242065 200683639 183276253 5468699 650993215 745335148 792445476 112508754 498999921 864765704 722039368 584377750 912044624 877796184 923305810 674072062 469027678 43784020 244917706 648889450 14458036 879570650 286125940 517104139 137730141 834641876 498919177 737380250 263247754 814622801 35239843 193961996 979921386 721428124 220450195 358437857 367495134 717949570 791620732 987412370 880375673 317621940 469198181 649169011 440942621 615449200 780491419 675219058 652500965 366240763 396846298 484229834 395500498 496124582 805181045 797968122 589892626 234093872 130831716 376999718 721856621 466050772 794614639 577230038 35881876 370055942 381159090 199312524 862401555 971612429 79322614 936389873 354995157 536192761 648466923 860867097 74946106 349628732 215374161 105053804 54579747 623918950 127356861 130126721 777282760 92744213 971178726 839356212 387153220 381978519 144487212 328208819 630198288 670023465 196410290 82087890 568639007 505486368 757792804 340085551 386109703 350807325 612412346 426350532 89050299 181721186 33267423 700514417 802000693 715883417 475424205 993479578 307669027 881200762 691112873 66489022 695104458 8011467 986389363 913458277 419438819 492289687 823024781 666062065 823345690 844235777 701861709 113988821 215674490 497780584 333075192 357026167 805712088 491912921 366026457 337889120 809121806 292262784 714062411 660730011 222428530 471466336 110816040 906083466 796477663 669283430 140440850 165178483 906434144 13837052 699366302 154269667 32821668 940928862 537338995 759951435 353861328 278227149 989109456 725209620 376640225 759319297 409350909 817353744 180116615 681548221 894870853 91582018 396211392 308966073 409952603 340507973 826648827 420613406 341974462 855268090 539947153 256874243 690745982 10580020 469595799 849476677 942629589 922720201 357896387 770922798 875304821 333888179 252364512 751249933 931483618 765036917 439727753 542154758 649759867 771399334 287251654 335865759 885529786 533459580 406261201 717008926 734388571 222480385 818015049 660941877 75921434 121209905 987845813 847926981 423516791 205937146 48602807 880383917 546935865 235275221 652920142 617069882 203811272 829190838 678166891 944314063 461968158 531049178 153566902 813796217 994939915 810126322 796921323 327164240 956019295 764271408 805707831 302051755 306268985 78969669 698484438 25675915 576343720 94128142 35731048 182819681 740596633 136288201 509895775 842271931 360864621 359614300 412652154 458319447 597335447 925086139 37423132 319677835 43614260 261533063 632332627 253276996 637390489 919023147 772539071 186732730 601226337 978590261 944815331 753924498 210113228 594283762 415864048 573988466 310643862 226189905 65613323 58552658 944937593 586437879 585422110 185258487 563510330 612328966 461221945 605073121 845535931 516851232 75768115 6399441 280531955 932962640 194408417 381424145 261533629 461957022 17784641 513866600 778450401 357421244 541639012 695074224 696514107 900229313 945576656 175009924 992875662 12871568 572008029 581947676 668347503 691154280 177342665 33583644 316601207 71458499 661968218 687748313 695936927 423610718 960201307 147468913 525130692 290654730 806410209 30320224 666385436 458207319 950721353 634445937 166246578 342738625 120303390 373456475 744992639 13922785 107984892 437056883 370774983 928174527 673379804 179509041 399206853 676489636 408919157 902480053 987481120 80224166 492420941 889822598 799511018 85215371 665425037 967983545 55905256 357959006 579320959 364983681 662179471 475485988 416984357 731550080 65987956 501616836 185954941 174038280 708240629 796400604 94589388 252773606 692245722 143579775 410704935 679938551 980936509 769879861 201980649 410776920 142365961 349436618 1328752 927962822 736683666 722223971 280129870 713571842 309474027 684266308 670600624 553097052 264709 382151097 213299528 495468863 386585109 462406581 825967235 274944463 806184359 199037108 637474829 500752484 68084096 369057640 710496071 899847498 812071477 151728726 301507765 191358042 312920300 951553034 355541687 969427601 482362848 594048457 267592356 217593734 401200205 701173622 154134207 775966339 317215676 82463574 714228212 704019192 184303660 245809300 144536064 79172234 886406054 689937072 336991099 207185403 322802089 135320183 208103686 163783207 548197459 673306583 178047302 436241059 72345396 291106395 628436306 30819789 203273479 112563958 872912971 125415545 22038149 590104171 826398185 412304704 123754952 459324855 768437702 618945295 463135004 295356450 265317262 426318350 166483126 694678736 673456421 793931438 203421002 602601191 389499085 382821789 292933152 604664798 976929700 691494336 548964724 490206270 602868460 296526340 915736286 359455617 957143624 580042824 352007769 799232666 424757955 154372262 133126917 995586450 684242511 258077448 821641787 776800875 712084410 343056249 117407032 504754376 557107610 709068405 61719398 935225469 806359055 12731327 428702391 894516289 63847221 937964885 572460023 16339998 68203698 994463429 498649013 53435688 655690664 614426953 363581706 479464503 79353947 314246135 903071269 128285141 509215362 980656226 318171951 857214611 4260692 919563761 905573454 311923994 559619468 355009061 391209312 533278766 737397366 509576820 433177931 471166686 371511053 12677358 451322243 799864641 795442120 289673613 520724952 36893857 981777275 151216761 67212233 788432793 626773868 621011342 587444178 977302354 271889368 305478898 416546619 399084523 250645041 520508268 278075835 372504371 592626931 712176591 378037995 748053503 480854089 458813777 563342511 906468531 184284181 860959724 944592395 317791693 829077413 903051040 346374044 560923415 163872956 954170792 373586063 446774804 612618336 775512842 852447244 676748055 239789616 537999974 174300492 683420781 983831915 117434551 668768540 471849916 727126973 706062003 129058654 998310623 68278990 404232943 303800059 725562339 997493397 541543009 61039223 90791338 781109286 763567138 524888028 209435249 949820198 860576289 460796973 953400126 293114083 478765100 318772650 740877482 490265376 371615927 402750235 339697996 803828120 519683139 293231134 642269664 787803708 422067591 80688984 179122324 902658238 437135380 348963274 471038005 468055016 277679703 607706877 284247585 309135767 679402896 185445816 904168525 42568918 873765093 523832834 677550040 697650261 664529467 20944327 471323163 586165506 212162989 653094243 224108679 68236847 809886163 226530043 351705294 201134638 18889763 948883665 538741075 299223273 933842602 627594951 486690352 780259870 675326425 54461390 620398369 627576428 694382460 130099800 171226029 24181150 568617984 748701457 409133294 421192201 867480497 475530301 659848623 655278189 244616438 192792896 673333601 231208859 106825654 773220821 589294520 178037442 47596279 693241378 426332734 275672557 125425299 184596980 713526320 936077571 82223053 138659799 236290846 959525689 68138437 222703505 136346466 883023283 818476069 612589314 453771665 375924654 912179034 230161000 917537650 206216365 210328248 835384977 448272900 681811733 553666896 897576486 236537917 797273303 667546877 455421757 314864960 810106182 843915235 713642426 229008716 250935484 829330093 593146268 602040902 220360567 705525941 521611732 660122878 146304131 332890415 440898343 816123498 72904010 948203121 682095083 421365775 434119329 653529929 623500718 483128850 335547244 768882576 325467831 611740394 177806454 597811089 309375718 953023392 949822319 85470586 469685970 877085043 887549589 501089461 337510818 356398907 898585495 308401231 154433200 199535048 17573893 818132827 900941588 227711221 982387592 171598665 524862770 73517868 5218328 633913051 356704041 883240334 913441113 164045665 768723114 748285001 310270512 837070455 774068772 222007433 792507897 269215629 166169158 411645602 365733590 793740674 914118518 968923796 718289404 69935239 779408493 355662624 107068078 987996915 475371159 229935601 557511657 626498040 909588231 440187835 577899014 849216891 47718116 995387452 924283359 397930450 850759500 100310136 641048008 242682857 117041520 249132022 526656053 394738424 988781410 531525306 484400623 2573812 863478258 255931527 940344926 144180110 526385169 754986590 289707780 723098870 306614129 898166739 778555378 944600999 520566324 288092559 660681387 923755061 403891210 983585882 11819510 897321507 405882994 463117135 21175028 21082322 767705115 453323050 423932396 159903758 213816910 473275049 325061479 217757921 196861631 849715006 102251440 259362155 820105507 380050384 917857284 1541950 194696755 368134194 604390985 928711242 762961102 386404306 42639913 893494508 408297291 950879256 993049069 346952783 476812154 329633497 951548273 254568066 285945715 788558787 638818534 929124328 9962891 997199316 152549738 450472221 419769698 375984862 61126181 787926536 971101605 837164033 726827102 131180944 737227623 78571260 821258624 690776667 327781865 779605090 265518907 980001269 869204325 335821661 134063990 976524501 205131352 76607189 509436397 92242395 56839569 573193000 678082889 851287394 845035098 927919117 261081297 140912887 250151984 242868532 10119686 426316771 901452958 699621846 212487886 209239365 824999336 992778725 542275586 924697114 582803967 412162893 605195271 608452686 935875198 554976139 595571711 732649199 96408395 883276407 632353049 497585578 947640499 643212227 873790762 26803057 459227906 867961578 304623431 536969093 578310910 760090187 551957338 485616937 308451501 276672067 68936523 421898884 266927471 249676944 387442932 782204231 386859742 137606759 38138120 240415108 777343100 472720054 297246129 43355204 502352450 948039761 321693654 12452803 277608558 611064047 663154111 767707632 628875459 360513097 467983432 475005027 343057092 947994951 286781853 750826020 498964174 472926680 231543235 184076105 213311705 917073480 736201141 611802082 602734471 199136565 287213441 643914783 575887256 811538095 382014215 259150003 883778111 405514918 392092290 907267649 772650557 673325682 688439712 120918916 671847650 722118566 484728870 453382643 219423401 247040100 177115 641759870 267996057 251151978 718825596 196306773 62347958 503717054 834285472 934259825 454987763 657200743 953691054 850493921 800649479 117143836 406124976 469186166 692023802 117905629 789535537 314211342 847625166 863130998 493037636 524709784 978993194 123161435 39986594 312171567 762759158 982835181 700191046 524702793 161581228 573055548 732808427 982510736 503843573 728724275 718100527 748728464 346577915 824129340 382631094 300416821 603810946 761651927 402317005 292185246 729056288 304108783 386908044 632949695 616173500 192092383 903747917 196776902 562350365 931293085 911436901 970075950 761007938 338664981 640685019 157820726 555513553 962699408 564124886 605613994 827498385 684066801 472519546 625234316 701031692 606510375 751573966 718668791 942025801 37180915 732695685 57366892 280234761 557254620 144094263 307542900 435717975 20308228 758381839 32280201 680481099 381798315 906000113 974049278 661264071 795281780 760360349 414510753 928746649 697584030 274157475 762388925 64962931 350124970 734198016 926086548 272357568 325208354 837683647 352326510 101438190 830502928 167629413 8415419 796666810 906094780 513518909 143629772 446109949 107891346 986349073 176241302 274454312 879987142 447521914 671315761 83431693 127818476 34788122 929848579 14894063 993178389 935807512 494122149 587128656 733221251 993316941 577344973 934949924 911087422 410257731 337975996 708601911 521346326 405642566 827609423 234413709 467680728 399521081 27580093 418280609 164409570 99917405 12131528 275456358 819506461 701212102 488852418 531335498 410707058 717061738 534324740 895359658 781050763 964201097 898823652 256498266 117850667 341275915 200685472 313574292 607491915 654590998 572281619 692611315 597286445 711592140 239147588 12768716 99120390 439069659 330943284 275105148 646937346 935435509 123698508 251857048 188861209 948865815 369271651 190117383 684513101 30152236 397893613 49362330 697128218 479385423 626454875 885092383 464904440 575629624 816721417 746855374 279468638 573523563 598090606 455525243 654183990 262854489 144666992 358246396 39909193 265677622 926519774 488355357 660842527 747263397 120653872 891759537 259823158 353857781 140787111 149098996 316136443 151456538 536900126 146884470 533622722 528823371 336968933 35945293 485338494 155696185 531140024 551078528 442334639 418219945 381111658 977240398 615643193 664863035 419806728 599508263 821914990 805741669 282285352 107263201 170974278 238485554 561063159 834710972 320542273 936795993 516632721 128045135 606074614 107052929 806235634 645319326 335210267 951643043 479967717 267350348 892564215 928244539 536876044 214313304 364889405 417236755 259359518 167781668 845415565 121451985 928125697 51341868 46879044 1866245 82572518 404652536 833488863 999407230 448273335 999382901 899282767 195172468 680226186 338164898 308163021 562318418 206943847 262296258 798498997 560149704 353226697 449452084 897053646 108189969 10260299 553509333 393801855 779873031 454426791 889626660 640592366 650094308 539930299 798088573 996065941 610812978 869156040 228905719 608821832 911063039 13770090 27464802 206673511 285157631 192556305 849708900 918526767 919262731 724587237 50394549 172386306 73544129 345832517 275050682 350348580 428870493 629060190 385606492 33563668 85935353 77996381 22936653 782744253 883200329 52168654 160321923 685952322 880103669 65095685 104523146 153316264 949812973 181042891 258209630 920537773 339907437 884484348 166375235 336674417 361726758 521079452 842194661 93360665 841830448 549644515 816075518 534439780 325112175 985933800 424455050 150173335 566057952 904557606 998686886 180241163 457882417 852407559 767806845 157261960 849676975 836119435 333355236 398114001 128787266 13949783 527056763 206233388 820070011 962126671 44006562 819802874 480111402 835531525 932801699 267047230 706493727 916299397 402781597 819899867 193473081 137143750 851515394 846783382 362325546 330506005 940697048 705477120 754507044 726445701 515143876 792968239 510825600 268798122 20967689 363757427 413188405 782934012 822330630 496046980 15132234 591656054 423739261 888002542 392578412 918847201 385723233 122530355 700509923 538569650 919124017 963872564 715961975 521337795 138463119 881538271 811451089 560248481 670767484 606669279 8838525 38315963 666533390 149329809 887491518 490906155 49335625 509884792 977965664 308923743 864784833 35633507 886112279 180059890 905743236 762416906 17843174 375986221 988106196 240900260 151532046 797358450 132057268 936721217 930446074 453659409 656050832 130787273 264577777 412511583 727208845 466812844 481966976 148022637 962717294 293465745 423085950 128904293 375099577 829751195 467714665 21208137 269705282 621577750 937184745 898844859 954433729 617203711 907405882 289546299 183305345 356812925 375912442 108922469 731124691 810228870 204192820 559771821 516614074 728702308 959086278 879412309 794420185 657681024 171206048 642771464 283207009 696488961 526224541 836734086 441323363 856957530 970498495 558762392 809758780 416791198 353485646 119078816 573543564 385680028 726664953 280915634 680037224 287902121 728007384 502360908 722793836 352236153 977283597 61037287 214091418 342157725 55305985 815363138 117215415 618942320 152858620 236385999 399420396 52409432 725068905 350642789 437006903 357096167 85969369 430366482 875474211 51983033 499697563 474998605 133685124 868487595 359077990 821193595 819873110 737840328 402249599 768668823 352284424 592966550 748857124 711100179 890816130 922043866 752651626 165155059 706374660 10763917 699256847 179592818 718322570 834207626 689538144 56431640 268572532 662360076 88342709 862678100 485705937 833842138 352483351 132549940 746200722 650580103 452169062 133224283 954709818 295045331 801079 301576115 93824341 918831897 734406328 791604049 374668577 926099655 416606653 798796389 341472828 699651622 849729344 684330974 463303441 166415194 402918648 911945265 474423496 579729064 287574224 454944607 583492752 514729217 711983995 452728760 763995441 31869986 211638002 461692561 479460361 294304608 216608175 555424669 185322311 459145286 449058566 431310777 427971343 501884823 132120277 986195989 80769201 535954372 521299549 452290547 735473944 506638680 894153746 453979940 410803654 216153026 184163775 95802616 329005732 171193241 892153918 196308640 389396703 255898856 602239629 330710693 452838272 242469537 116936916 917687597 868505782 264633772 782318432 433770416 189539529 178034194 699160922 787663724 444523069 635054867 675069351 264242736 142536008 713655931 859113014 526762134 792182022 424953686 324120990 53951370 308044322 703842508 977175583 597636669 120277325 822803877 366835130 703456969 161284421 71932660 95490903 983316398 551709290 505104334 225983688 892698677 141789530 273937696 281522640 884136060 438850737 355583344 40929252 223749133 386093613 719056813 12907557 783995992 299530130 62035267 566770281 236811755 463694752 883969758 63739129 492806535 946602809 304799421 689120215 663051608 393016645 4937861 162549901 211221520 78977806 644067845 795127159 160551073 338367266 294604018 946132755 349176314 260467065 350173936 792681033 369450973 600707400 760780903 696438267 302027632 242289612 839881459 643781592 661873403 173007159 538786216 103473795 640463162 838170705 949898269 621098911 460110524 534368813 505941520 365748933 585827075 738928302 731146657 671518279 443252158 757920744 828897213 951559518 12432861 535355478 726894409 494846574 42568307 807465924 373339920 290198058 937331776 672999271 292494928 488370540 613597562 328462276 96096791 282170685 486066879 655201059 776227967 489885579 436509971 817258375 174346810 847477434 741278359 911645389 205939729 563338907 483611488 728940986 833849829 542464892 202115938 904559962 381246670 839567263 96614216 968696345 982136607 951858607 267811214 986006490 915789134 811482932 314320921 151084367 14780715 792748957 66166990 652120674 435642771 936808764 896988062 61827796 280199440 819317026 299013570 266916087 456123230 364460415 652988097 821226079 521555290 892724993 743073429 878909631 981506073 290802631 992813398 676949514 871660865 674403537 786501937 996858906 271157364 987441943 175205142 907902886 339526787 480847306 168369346 330594281 719286289 607023317 58273913 645611805 53254163 302623084 743712847 740996936 878138622 710584630 57621748 47056529 961276859 465144445 563026578 819101826 581654091 543000472 640778374 756154485 475163459 738967505 116934423 611291480 350023083 73953476 988872948 300082000 220751818 33918282 71073210 572212647 82695664 135891391 434620690 775856301 489674364 552588880 469046024 902666371 711475341 758558239 401497113 489093966 499638274 861809061 636638501 635148004 358347952 625063310 202573295 883495248 690161890 400821510 13578789 91870543 933246562 157727060 345446346 408113973 192848363 983203604 964894655 371099531 952712682 706735325 898556691 856003804 513725564 740364773 832297576 663528042 904749108 652420847 159757543 866762086 438482523 505417604 236237557 40844369 312972112 919913490 840713702 228343423 988683248 741760112 461752941 970411266 475025695 626204552 392273469 139529427 621530150 209925990 112271500 405233846 880400346 344736435 595162267 159136837 274666094 560146454 384535197 161832924 281474641 450964613 125008007 512028059 212561605 86207533 365848272 196747322 419350770 775525661 585026388 942627246 809937578 857332560 391154924 796190249 883369387 951126274 909914256 802086367 150627273 117095594 316234321 972958361 108687731 137340858 191286795 618416824 755590299 319942029 986946910 564948632 258101504 82905506 381020949 594981516 453878116 642899101 618217387 115802226 704902647 832162594 460396919 667840455 164645130 277816726 108317685 195232611 795549142 146333610 817836789 90029784 196386974 750205609 341925675 87431570 725315345 364639235 629885714 179291767 865482421 611260108 457152231 477695634 109363450 119155047 866798067 755852411 993465739 434739981 533219847 64682070 625916594 1601786 811242032 177560022 391837147 22460422 634050995 130761103 100318903 552926911 160768104 345691554 812878780 709886650 854289761 485015488 86639549 431640252 342961707 299424657 278856352 637695475 179888416 256294028 268268577 499570419 467542666 17736422 865004261 736604070 39809644 900536531 601065834 775645482 537618480 861954818 102846831 49512051 918393896 103490206 446717605 124586397 141119633 897718551 743560436 442137099 651940316 4713183 447386507 522892774 903682424 712384886 427290583 94319104 403468630 195299243 564590264 295722924 212175424 19975102 976384143 475303683 471848924 341140805 469725550 853569834 539089607 607782156 317247531 266255894 11129577 765155794 253699472 542289644 323892261 497223041 160727854 575230286 528636426 804294459 760395642 423370348 537029174 869031290 413350991 694873828 943880284 806364936 93767199 981674829 730643712 446676299 984191235 555912658 700323315 950694376 478852501 30982103 916770525 462275910 9368879 797109564 311658706 546767838 415647335 153379354 793767679 892964854 876304485 848251414 426232863 922552877 597727667 788094187 90931665 847696658 533426536 387673129 573430341 761931958 894042270 925248473 909935782 311581346 701295824 123580643 326865116 931670475 947523648 163132766 680133982 693384099 47649467 384662516 124405230 741285458 326266782 964617690 545966585 850262341 268972822 300638430 915120688 867785622 511453115 526946904 119068011 724505712 871890355 649459206 954887321 389701561 283536332 600536466 365988212 115783253 59083263 326559831 764286825 145974800 35678366 263608689 607471873 414758625 677128978 159938396 845490629 287991678 818666731 647700424 207869164 385966820 400335418 560330507 631309176 393917706 319577478 639433772 733787949 775408286 169624576 268519503 354057947 934913987 235374478 570164576 952697185 951647863 318264879 165453708 947265057 128228754 656313236 597338337 262804144 36415236 183895944 461172905 544373061 597643246 166173099 689656951 920424555 157944731 143930778 376721994 717584552 811045946 604454082 418174246 318115548 570048051 329290373 744934117 494613095 327320773 130813144 899502232 901414929 372748508 962906893 440178825 68253562 938861909 560111781 667975162 431159269 619915042 430827538 184573282 337054522 822786387 278630954 325439854 295456848 563093565 497784104 113661252 926563270 79759769 915170747 218707396 9790583 813822379 611510201 947473025 287732684 846414810 155993819 390049871 106836752 560695167 513617242 779467886 11878881 238466026 667096069 749447508 43789056 449439180 94733605 204282040 438250295 62667566 233723936 976913950 585798693 878698326 955807486 719527912 947974306 789737313 691338160 970467513 127212097 736644675 952301146 574441602 6015213 581534920 450865106 353695034 967230219 484295780 884435734 5237948 887177990 913254351 47454389 254097364 839031741 83867373 244925022 534134630 181590022 45517686 391529989 509170515 438260801 772074744 772864941 556960386 528508660 282038285 366715843 907091936 185460547 912375625 86940619 903704000 506177691 684593215 864743591 781106865 183828291 811203163 210809277 143947960 285772335 926311944 416758685 976000463 709201134 68883687 126268815 210376344 714272872 745261689 852539990 257154036 436049480 432443067 613112939 684236043 800782433 280156960 668551650 442316754 458901092 433565476 595135929 836341171 352934187 343717669 325729063 79048474 587311445 428039188 889103666 800884732 449407672 277148925 319984908 485531183 749022934 380575351 232641775 837516792 214679356 362843867 472825196 303728863 379194165 947745643 141548855 998803764 122210851 533891998 95075205 378326789 335494199 87865542 294752658 522992618 938465498 675092041 254072172 309532633 965137136 477103323 422301124 513849961 989968274 230885097 203688730 367579922 860361231 728212823 636848640 440818891 650123638 529307340 215894207 209677304 970557185 293343621 375193140 585371030 348489539 858883636 435210408 886184671 178524728 130743727 84622912 437757557 788318494 790266868 838232484 356582178 840048127 639627269 554786673 659584866 442427880 166424640 607074612 588751087 636173593 246647074 529579969 429359796 50966066 177002361 405433367 853130542 301423902 862973767 774862116 25948250 537074062 193383314 911528598 725517264 770611143 705133667 557458195 438026627 336545810 120017858 29997840 785104543 113955495 444319383 776781525 643832870 390459596 345781088 265854394 578542359 504241005 80353838 695061252 137796133 985920951 648903029 277741917 641706764 573147410 983305659 229146167 938521745 642504388 197578946 818685349 303071404 49917769 926120888 642452043 151823577 738340660 918817364 376137373 873942952 244485957 342885092 673599200 707807843 429696534 529940961 170165006 617976375 25019622 809809101 833714160 673069296 46670501 306175327 331815512 804312200 434096773 73222451 270103564 601681590 589868785 240130161 411512991 117313870 577766377 43749039 732593392 387435367 387646092 775218055 563758852 798918190 70673020 890037878 15017976 793149028 57345492 140795190 533305120 488818986 427880361 755743800 133970051 588231294 789369917 512885178 990350587 297106105 631104433 655237487 393680068 359202290 218253177 213568002 218807876 844042247 150029861 504077875 865111287 869212282 842401925 685278025 681588081 674660018 429892732 106302723 108484619 343785428 487909696 643089258 527702560 553637013 330752703 646768942 938633932 404099838 972405046 880104053 446425175 256019979 951041071 678320572 454813911 651973341 607178021 649005076 111315811 198076552 512583514 244236094 898103670 509750375 542821526 659072677 178857813 813696273 572972333 557105624 133189403 743529008 688676038 770404432 524732681 854759026 168323551 985816206 165636989 758993616 928652546 551246977 39856836 180252631 726672213 950776753 34812301 739988383 967009725 220641560 881770510 885767805 174788097 646707256 339792813 688422168 641463603 978614683 146976721 904018711 292587069 340913464 622222473 586170726 972463211 962762328 640087139 326940106 301166646 728596643 216431981 448893465 411333446 953371130 611881437 542853179 207357367 874755202 874754934 48615330 20184965 950238010 937202294 164328066 565780419 765010042 790819571 469091315 623113264 896131418 962927127 538935855 272247055 242486183 259526067 19894763 860071721 394438262 580482187 546903834 805975260 263867946 93017527 363887630 48759636 721074204 739156362 313915846 444728995 188483757 951337332 558591514 319537403 905373329 31927928 725728672 868347900 709968651 542525735 5586704 242892364 702685882 178137583 18860107 87220143 801397022 585883228 183855751 503614021 143398584 323454927 508786786 858949355 366372232 24171998 37071644 41988820 487040053 714576408 856231030 814187294 156652178 954068397 635598948 76869857 355506452 878727634 636542662 101453229 868507682 343311721 523102052 390127124 357788126 362710246 928169830 281148690 849405052 887328590 362000634 889387854 66359343 706851224 407281143 653274431 779030100 416305730 338817234 323075949 603781021 153456611 471499956 27003047 86988534 550977911 971135940 968974157 106223282 32633173 734157223 248460065 193290485 459520212 409031141 305231815 194752527 226964836 568182706 181648385 722200898 673806704 33944079 625927871 353895093 959535280 985733281 948748838 263441291 512056360 603236954 235108724 335536630 291854356 189303666 362675909 857974857 310910502 228490908 369654865 779895728 572948529 432800774 668910714 672645108 181308994 514729836 697650237 459961103 31479840 995997377 25268489 112226965 208099972 201562100 800107005 803028030 766553392 934699544 581258831 509003172 688642959 525125392 78182871 463728883 376374730 865084293 512401323 925955981 993409481 557588176 230808690 603750138 11469335 390793980 831424831 249308128 425933307 67458573 199906990 532641861 615666332 96358584 611467170 432955567 304243319 397296650 463467880 972330018 242307116 671759004 86682192 957790222 439801435 6790572 389486380 765675398 621116501 610189672 854115622 61925757 803194100 473076851 697956756 933155566 573961642 934092142 433107100 492835232 248410183 671953736 468325744 687019900 945046378 174635065 911711501 81438062 822088149 440319920 634238980 902444207 328301916 708747063 595495868 252421078 152515374 787002613 295583050 598679857 444603895 775318283 872033067 13488076 789472118 779725128 779602565 250661551 36522121 705853295 540056196 758651758 145393876 912927056 5314491 751805548 407345203 695175560 45959804 200835162 471752565 127708 142887685 999016395 768442941 132070641 815876514 496940099 429687044 457225828 863248906 790099712 724844975 504232775 284451455 803851715 265407924 685087204 996181534 554646369 498660655 691872782 319529645 278306833 40432418 972967196 100710901 46605578 314434319 95087221 996007315 240404228 85996851 251498840 723377937 137419991 474328035 906690299 698463170 491195123 349483464 385039517 236600498 725195552 440836072 851919676 191008686 33286667 416173737 882671341 628143860 174154397 932584040 272456366 823495905 411370731 834062441 119624035 364163878 379610460 931106473 523458694 73705441 203692552 723156656 677207200 321146633 230231579 936946414 354063345 288550934 193937312 71270797 523568462 80458502 602142738 898967932 85246767 155877501 488568268 753470287 630311089 435234433 378286672 374089787 502741426 102292863 472846402 600298734 557073582 454897660 60698139 55575026 586738154 816891657 244971434 798766477 751426860 130734656 369210986 719647875 76458540 340099808 33194506 778846171 60837760 966076668 814059882 388224537 503854405 809740853 959350395 712681731 706335503 723274377 414039654 925125911 11644809 628271198 886619175 74177399 372390225 839285535 33394489 361765489 234878845 92939179 252283707 610441113 917563096 175293401 59902719 487305218 225100010 463130753 573604714 135967065 837275609 138327070 944932160 359830877 176826071 106189985 624006126 684178957 32071113 178460979 130379651 694720788 516938898 211624110 729000710 3945592 823440317 846872619 999817724 210910705 695898314 208883315 804791748 86440165 131100551 5237587 962294544 190208868 890139150 608346622 950294224 213798818 544725483 140996593 360841114 464447088 832676637 982643722 729500477 104270774 756332849 928186592 42347091 224612181 861440300 742843940 163220117 622226693 23982230 329885811 77114087 300848627 918769774 205120730 811943706 714297100 189543261 771826199 863922394 298419771 368955966 387790159 962768931 573590563 801480454 772885847 733605580 644860111 144659640 592141640 256644371 28347815 431670323 780188816 877757039 872599769 284437325 815830592 204837698 672777560 460407681 210627639 937625592 481423147 675870736 231271583 919061338 419144549 310058473 44162032 66660290 652668002 922181623 129874351 178387974 908723329 579955959 588222593 426877442 309029366 493452593 745911991 934356917 237717756 602864407 604659542 115667230 492968732 937457948 597201448 125668592 653673438 661339117 279908973 494464321 763227319 1223105 35960944 111883297 556607481 889832778 826571874 552740162 901341769 485724861 866526740 430865275 90731881 17700590 961404714 99876588 68774993 70627695 929506147 113644914 592611641 468168883 888423084 747648666 726408686 376136901 812444634 356749949 907576435 274395710 888534957 236165899 435882021 347333031 846820096 730666409 554757464 218580001 530827833 751617683 909811971 427195235 623007599 908546677 674693559 119723485 856759516 8423936 708831555 777405195 897503492 617712978 253868520 618828583 910134595 665878893 335659064 873098677 412018189 170737414 819477637 916096398 686351351 661058674 17292714 195334771 850484373 584788630 24491395 407331179 73489094 487607514 678570030 743673357 39062352 708652012 425651232 57597353 272102934 147045223 682757529 426391814 366729693 749549144 505784195 907302656 177249792 392855628 447155200 480968341 687645152 236530581 168598941 257027363 202496873 19446652 870384694 7020553 815770738 214413576 212363027 390763128 861942913 239436500 393494208 555960264 436624833 467353887 630669059 50922447 506583151 486949864 101642960 171107529 540116842 254926742 773639088 248133822 127652201 86601867 809361885 422574344 925536078 642078049 773186538 210730023 752273243 682593524 30056329 762062683 73416500 846903214 473706185 210273003 768563128 323435890 935303608 423569903 233961983 413377486 381945202 309260483 162302404 30670694 720445197 375659362 321298074 276384269 750953445 326843680 785169736 386081543 565545053 24792612 404393376 594901740 941359325 206712863 691942707 736994529 493435146 210993471 920852074 365591176 960659371 582372919 693839312 590297548 816569494 671116425 698788319 185385999 582688551 129429411 111996025 539728825 502936965 914509149 313329914 136713815 642686626 979453274 820776667 76839868 345429777 262272626 36531642 381087552 274809115 941261756 113339337 911291617 118747109 26495097 829041188 905272067 54873679 803195956 778432809 9454032 673174080 459926891 37004648 169379022 830417113 171118075 309774084 978738772 789996456 747257368 219943069 912374344 67075782 26400074 960503711 765026402 113320760 181729506 614582348 235261968 37847262 817770044 381002411 963864157 825926241 211594647 794285388 955207773 169073234 501558129 617750946 579086836 639325216 940092830 653502580 427559378 321362408 595945505 118630913 35568552 64287533 387571152 628924812 807701492 80502911 297653195 345696631 355562576 599812703 690834540 40509264 421189464 313001848 348603479 364725473 18311859 5916809 781426119 971557170 182215470 669055827 410632400 873277401 109300856 726618562 881847997 987651639 61097948 744202413 245165917 900265580 537605138 84217065 624982218 505115288 461459999 900207015 105688156 558859206 655598350 712371537 764047360 421510860 806737921 757942973 464308191 649162841 182404094 333454843 664046074 859937066 902091379 950934943 152076174 89691995 387781462 810832183 890376638 866000150 561292895 316876752 940406591 882882013 948875298 646421012 823559313 786329392 257175305 322971419 527362718 744622479 422710229 931820364 663993355 472620882 40666393 99125406 841701388 800564981 948262316 226879862 819273424 690535796 142701883 481149939 216948627 509728128 79179214 450065536 675655813 175026885 520935226 520991236 948077568 432554339 719129402 884033603 624931918 158046889 580711837 562450398 838725183 662136688 44016645 559085945 564787819 951442617 940631178 409948499 443548846 173850520 601981020 438212578 508826085 579528969 22380088 552920890 593920418 99641593 119101720 684354805 905488327 421539311 787532663 287522121 960846798 535902578 940065251 479735381 567713427 526283101 795795329 633272333 972809298 552525599 804588600 493639472 975622670 517041368 448435303 364667666 247559088 991487703 222583090 575331214 785257368 88603506 66281072 573660891 406852872 312828375 932757384 903284798 586667834 920307966 671373431 62535952 666544693 969777519 27890037 608029799 667717756 939966010 184215606 365883114 548692598 694365003 374878630 161252774 523726697 92382139 973375129 215758970 714680013 241922338 500470057 235348559 724699298 995053511 540477238 467984173 200111919 491320634 990025309 696691673 955848297 199819448 506499216 67539567 554814532 139284713 801895008 92655145 540255453 578629422 45823069 530819641 222753989 650623569 807379949 280873242 78338440 276444540 730528940 11005383 26727890 951343395 67720551 115740284 710298669 228105287 305476382 956132738 84130649 925383227 754481891 882334580 369742320 799761105 357415254 198089504 30282824 874375495 773579772 559016974 854350911 971720364 906715926 13233480 800641520 405626966 916236089 920116577 118761512 543351014 434613524 768600753 617475210 573628726 400796908 523284112 214692244 533667900 717282552 715384574 97402958 705838102 830972631 966803450 118088219 412183956 595992906 230396944 674707015 436659708 59006127 336938063 59195584 91697671 939274946 134435082 96510907 979630332 694164609 392957725 278560653 499588772 188360001 627178239 572876701 285722518 498966629 290232779 806255002 38601012 429568421 438133585 126055996 700247309 623638221 798456471 187573769 488370125 163074451 459024427 138568986 894338870 70343420 942051227 879858596 786967625 784933764 162653789 416716580 253874967 173597913 401236736 491764494 111983626 736638210 803684707 10137478 548283980 229468874 715486341 890174099 173350195 65124809 63046928 129233162 924032508 451063534 694043079 217229090 907032920 813784371 200116308 102538793 465461857 630340117 346707013 945410294 99503012 492169294 876854707 886812108 210798475 473214744 726127623 983544116 242051357 936877085 704742617 490486539 853570303 663567938 986559977 794895036 72772939 574101193 966086034 12023969 89186473 261395609 233064767 302501968 484195201 308918606 238215245 528126938 458414124 53153266 722169873 407537834 39163358 665254172 309381533 426238000 40484599 152093020 696501122 127650037 265816037 836223184 637463143 275965201 95545237 126287708 935644698 24759438 654911999 884871283 11287010 557571677 602047354 29277757 940671100 978382283 351520156 79874560 79790857 965689267 555687197 758804686 219758995 254954172 492158670 945829706 234223683 548283363 442302348 314234724 355219592 519564030 672993588 339906779 119802207 65978006 539626232 621247325 123814608 248907371 233248460 901150004 80568101 793351511 550540046 911759325 283281014 684028509 562159501 680108473 471350993 795555340 682238247 105890414 697475022 940406761 633301410 10005277 743387552 352378478 791527671 975249553 506531082 970862290 773251240 740978731 826263648 359901674 385423929 113036480 163750186 700985626 121913985 800650331 646964696 760726219 335422631 288637195 158761023 625458676 334414706 542093202 877160416 704730941 139076333 986570354 775747246 365655701 701208140 734853925 323337080 827217692 152128304 628491154 520551541 789738199 582328791 540861083 817860370 594749303 266140218 317813056 595619001 588155250 827427906 143230361 481855772 236453 562249528 442228460 494149464 879122137 867368502 856240534 763215635 121170823 612347276 370919220 185613425 728267139 809813686 418188584 300464333 691113081 240731262 47727753 482986148 374242865 434293852 625974739 872627155 970018058 494001827 802830314 905158505 56202620 963185240 910954807 142194759 736531381 702565992 702089019 540033458 669416517 340668520 30540736 726859419 69315894 757475802 84551049 131809370 308228249 873891256 791981894 693971974 214738174 397139916 440288475 941486963 506723340 228856845 979719108 645970187 712883366 992917900 550458827 460565643 794265435 401506522 421465883 624601273 336886264 978297017 263647062 481630453 968838259 352216253 728746379 985079971 119213176 797621237 937806616 35495337 793979161 758456362 952398035 754464418 551113236 889268608 625002634 102168272 544541312 258030104 656992511 550672962 147791680 364556544 779039549 594704276 117046040 491160983 383221396 801023492 831592047 225480240 109101784 968413933 158613713 705652726 245707786 686450271 580972991 847531078 443252055 979567863 785004386 201694470 516152749 37393046 988799402 191909113 512151813 707010519 174856251 288036970 614895606 872479315 678003769 273797366 542762395 989710785 248665045 502137237 45036035 305681725 183781193 659806341 793053746 14301249 212696781 103682484 954907709 802769618 248662179 516606963 45439678 119310608 266438810 337953003 499451558 200884147 794554892 63073056 837599819 936418120 729592995 405235799 312503419 858266268 305104748 803393723 347472031 75613945 611853109 506389663 746200096 808802744 846041880 316059612 599714295 599317371 966460862 817018195 750976603 105471320 616495370 861951290 101508718 825455889 88043300 558936056 986993021 671483734 58992278 582328139 171746975 342016535 86414120 566937144 939302405 372181489 404335854 983553755 537882368 582641740 694368980 574992143 19748035 991381658 796835356 505920105 767073684 984907016 624173998 611603048 820028128 136302951 878953043 891523856 468372004 845462990 422549461 639160567 83409093 22478506 788133699 399204225 491282895 674458689 981086000 138447448 486863443 346801280 303214445 14790476 291995246 452407579 557220307 496036939 587218848 698324904 149771743 695469097 628321313 789938712 309700471 462552208 898991746 7958469 227428045 474729315 107652620 489466880 74082020 180070900 438595361 989525583 104417901 554078083 264075858 974755498 188243490 983469901 664328146 888593414 874421186 215586632 60202256 259151423 880460651 524036298 406054645 667605471 631297521 366667694 542351260 137577199 499466722 907110435 259648053 657073226 688332710 643233592 229928640 524157612 101115302 351282624 21561173 803754076 22608094 563410307 810615090 438054445 773151630 446399100 709799397 153317959 156995466 277090997 943173870 617106901 947305374 517302249 314996807 61433038 627467583 415432102 806585552 431998310 369729424 81029538 72150943 623945678 88869750 97516813 904736847 344061870 574146634 813793658 519006144 492234499 944031063 302880461 63739275 913664382 671334987 167152341 394566645 148532270 373182125 643336958 916917053 34274771 852785714 501237702 404738946 268078289 453092206 639965071 617849967 650998531 239231845 5829874 358694598 303350520 25862245 636561991 341459867 208217089 681987684 809794932 934823141 871289535 957917959 786914986 670315696 960215636 981784183 171584319 456120108 904367709 179559137 67010464 209399623 103754440 683823611 500249355 135857843 718917032 912062455 184603084 753938470 941745625 406358040 852522626 690509036 881315653 814724805 775838826 945384909 409088058 461190582 826133272 160402103 438620668 660294256 945459391 712125181 834841894 446621688 396995373 285026551 787704100 981056598 800129417 20540993 367833528 522489201 88158575 899236226 23004624 439841751 123771193 533167257 467146214 799463291 433974181 522370494 178962729 664606902 957815571 482301064 619924271 738682100 273046080 882574000 896760306 286201554 61183772 928163881 496062372 368829132 757626363 858555480 37465404 305066840 745882504 331713840 219430778 223704058 651280538 884002882 732617016 126023192 258537535 334587820 193322913 353310931 504327178 696053080 925691215 922140905 629637937 228399259 642853562 329563261 523033713 120801533 550156271 59269666 566264641 917022892 838289423 558681922 767194565 255938443 385462258 565379189 905612278 829109822 285002359 92356362 763131474 625321902 531046436 293112127 941580452 425734819 580279887 634404087 657071462 273313464 16768484 412186105 988981083 397025769 289012539 732621680 293790121 169937172 108453506 942113951 348596543 282378481 105332500 144690268 201624298 540774404 58118808 527460836 512332426 959078085 495770475 342213634 999693967 746023442 761917489 685847050 945887730 411430153 326235129 110347289 163040703 23477469 161914613 661516578 873186813 69571928 478771331 118415907 468158717 10157702 700339031 406385749 19674295 3334315 580086072 321838715 545109787 51403220 204509834 278522625 638013077 902476945 245028169 473196297 172017728 926201652 605754119 936334613 238614734 868520491 698018481 948115976 132009888 606521053 482266914 917452029 204069974 723945199 40076381 7899738 656137364 720198250 641218320 726164599 953342287 423253981 602559105 495821809 472236485 484624048 843104256 692562225 66423196 27818795 704034101 775209432 193936514 973152153 371935882 430089737 636012790 19458297 663758336 213061969 757882210 136983975 476468409 311779680 903152051 673616509 169618572 183839795 99890441 791622323 276451196 358630237 363728849 661750401 692688559 371861907 800896298 78001405 490110100 289735556 529705248 514915156 370280849 712431489 483267014 678605706 786130595 935776940 611844290 826648766 742275790 269364517 379979382 207021241 198660600 241989980 990086976 958452608 224594212 998373868 857994501 175080362 166032095 738660824 436783235 577579570 678134318 602454873 47334052 793890785 204831028 155712302 150487507 278932861 654854824 304949386 391985112 801260830 855616735 369534305 83270014 700582758 107868402 780446742 743096742 747903704 713030839 469285399 188802393 318554843 564216640 914022047 891646823 421603242 528905582 764041198 749421245 607504371 239981520 676438248 31068331 555786625 971955305 885676037 540895539 205087009 481195980 996208180 492461870 588933015 991633538 144167194 916030445 909090245 511231114 87901927 210017550 373862162 62844279 699504029 752942140 29473511 906281257 856936724 418272714 657275064 487410418 792161933 507059137 464317005 432016258 434807244 972527073 588399420 234248941 502804558 323190628 534743434 444091480 687178880 970822377 913596016 683412120 624454829 329938615 573975848 773860458 273689933 316501129 51336994 3880174 327889522 63392471 938097115 701273020 398803438 785116483 96548762 433106271 625914538 954726112 267550572 435048075 132702266 578653872 36345647 525756688 922415747 498755903 787749378 178235139 628541616 864647156 49554524 42032483 158351400 535146693 145251889 879115508 463269824 788204180 474566903 749524176 436186248 154145158 15172698 351136465 503112421 339904214 711428322 184464297 236986656 682577151 278856594 301440449 851091949 415169688 865238244 401073625 64278400 75927937 139918537 37048239 284996073 718101178 395121953 422519684 224861226 403334309 686902506 233738060 326297082 605058639 850488606 750057073 971149056 948988591 729511557 880907094 428948954 659233475 445530614 160490155 834580600 892156967 689879318 584919866 209119849 960961668 764148285 79924164 310915330 509323754 734396096 239557496 55182876 965170985 680398303 609149801 28772731 383176943 350482223 749228650 309967247 525112232 468322315 31354658 820330777 712496345 762227361 190149775 616605986 759683702 23015135 938512486 850020857 190338886 324136808 122930375 61163042 21020410 65044137 337393102 848924461 806634213 536019088 419927495 111152065 490980260 983160411 697070106 519193798 800037108 14862467 390195200 959328743 792694765 280420721 816001995 535710281 529871016 984152123 564533212 134772874 250725626 809095653 940328031 928760941 702502547 358763695 83566087 423146678 693147750 460640189 401807744 812050177 659655414 913717212 419507619 421056070 420717853 74660467 57558870 57688697 778891972 771659303 811861270 29559498 424456855 137521280 610463813 556806584 219746215 294458815 293679448 376424821 740604809 832170304 916760908 283251385 247398695 702641038 928578882 650527221 575444967 952195759 187967101 65299389 84266039 145900656 773654032 36984861 959907032 325065682 766583950 842931877 172776602 688986583 623037933 518299418 232380387 790634313 559407667 422780624 279771058 140554615 219720486 331213027 40618474 878135009 479984771 586821407 732185321 356313468 690216927 993788989 215066245 407380854 594419802 750683780 118047470 566607752 984577015 163287057 736285444 136194067 209921331 569908049 749227839 888873422 355950922 60437411 670523706 95850771 550211086 608046522 642872097 582223543 226216077 402375483 601302213 54929559 693694757 46033460 725035299 247797665 87496737 179890739 735148337 94523796 436012545 657504339 362674417 552005320 333683901 839754894 380465631 131128637 552522619 469826066 120446627 675347695 733825075 992032030 158127420 567512832 626682750 735398254 210455788 251878724 950679448 969251594 511008674 862958336 204775831 776695543 579606377 362588989 840440383 876339228 455467324 235964632 229683483 766723009 882399232 66460656 467047554 620533710 69086419 685817791 907207969 447785046 76012450 706722554 834434535 427919001 98875980 643379745 987775108 748318202 64315459 269556725 829257899 180236870 790378934 742768812 411663411 666880141 116789201 459083686 175302471 902388811 553982820 972271377 167121197 285887900 422113088 310243592 699971598 762013189 515983743 623675376 101448583 982925037 769739008 955234972 436804141 148401265 561840468 215365813 392958740 900504763 264566652 122094533 884831257 899350058 523390713 127887091 601523555 427901946 599280173 71640870 792205967 65217052 81037881 538182948 564070713 757428518 229443463 241808001 715307696 215664471 963841047 863246149 82282109 779047152 541345811 143775141 952216854 730287780 159667297 719864473 360570511 168563663 508316778 38661411 293404610 705922577 880579575 991936027 924955171 978951370 619021658 151326998 80967755 855088252 121471800 909979349 639220402 546816198 577725819 35166622 431888256 193936049 961798521 573606134 215761673 215262054 581959153 121118895 323688646 145366953 228946625 806300794 757548463 889293998 775155182 721325347 309059090 742835792 851347593 83706538 997196991 197402963 317396275 247704178 189078595 510549644 72485377 746850716 262122281 822268031 612537982 196045037 107531242 828134455 795631777 591968154 902099167 360582540 141149790 504711809 585305344 416827220 305487717 122195658 846013560 741212662 141602997 827098771 208734675 84969325 514383047 277969148 212443364 409109140 287484840 298049002 938266134 50073718 136279710 109922107 175541398 616628742 743862869 776777200 141432509 909695077 210662217 976516257 82109320 765453148 193125033 718397911 390377623 431111159 171883181 88747040 303568558 779067978 336519837 96461072 127239583 503125002 843919131 541871021 882720205 578926496 399346298 439226933 284333660 735735292 168066851 927667027 436952009 313329795 698739201 543152696 994726512 990563822 328065857 324804421 231624818 661661981 345036025 102121615 137024125 878512725 992577583 467292702 121635903 113074657 776977253 721915638 99497816 10717095 479103078 393716863 312702403 177946463 87152729 368583166 54029235 595368495 180177700 389548268 108475861 779933185 65171661 669532812 149308842 140424829 970175781 377383690 4417515 455399984 75825412 133734475 709445778 637424403 982235082 96875685 913643092 119582023 439308014 192580195 263817727 380841507 156173030 898754890 169335130 51638056 769166707 623622685 202608728 826131582 988579393 321017092 78170801 898328265 320874767 646097097 395680640 379146312 502295098 914888636 561030348 313736502 922223662 309594021 90728434 647094580 160877424 465699431 913197011 107327562 578969696 396838105 134046567 28032242 159719962 855673205 408344052 631671388 685110962 923470726 871030683 705200019 679399183 126216196 585478609 765247296 239705881 239528376 35678438 331795604 779507548 115107226 572480976 926780498 413512977 309696471 893043347 168428983 885940872 465254515 820699923 493704334 104662870 161224184 864126544 42760610 438341054 5390161 619787287 111489650 574254356 540029588 77310457 628341899 462210321 638393960 823834212 941535596 198706624 630680587 415909412 214668440 817151708 894855520 64501989 473555657 964767849 38092840 475899650 711919100 591287352 448417326 638035033 533513260 128441392 741941835 571923275 371164583 596912926 209359237 630449664 380264201 556509434 53999208 741399479 80083988 964036790 466422926 859386744 260410805 288231569 48257927 125868996 354728427 280143151 283092230 926089153 856956719 836494279 937931901 373265287 386988923 870923698 28110868 843890426 35847138 419919158 832354204 300929349 872323573 289118009 56028863 711102408 221582857 517798712 992316080 953607238 292430316 984357430 276442981 349255576 344034657 881280442 187894385 5140177 534113815 761747545 89629179 781793765 369524746 700577339 824278549 122267431 481698128 180135627 117877497 191800032 423261854 126765201 633780795 17103321 950508230 439135208 742663416 343356002 672916722 66167867 411123218 59196308 653216768 684777391 567367881 572123354 663404585 970834552 67293193 644963751 167512778 142392789 452773643 178638838 169889167 586583900 193422901 814884797 40305278 653131531 51577116 980163444 626544343 907018230 790539105 976758241 600500902 765567678 686880492 328372609 93146561 849762204 854098367 26007978 246751518 985935138 493285909 662163460 190530808 366017053 492220957 375054361 462059651 1211636 653913902 504329728 487775340 708787827 583097238 700732429 476998481 779910649 839519550 504607480 94907513 977731513 526552800 112083445 524671544 84532037 883881890 204587534 316933368 505816381 61503794 502141127 548295103 816298902 548654854 555322126 193827799 216330049 638786181 676416690 836472290 49412510 469681197 127150512 343597289 177791292 42664543 267303566 605554880 38714394 778272152 738368098 669789715 327327193 440139551 422345646 987390313 29582225 167505238 122505871 306883680 465037661 434725144 647830979 249739107 155607509 256013362 696383054 693922137 541783051 363957346 562927913 876989719 400214911 902208872 424183438 803286325 31700033 452729596 281365232 99432033 351431882 428525307 412298384 992335034 44597387 599726660 740860805 904943068 647038727 14457877 332866394 825385275 502488008 322211926 126274478 920132585 153874673 893029608 419249829 585149633 384097352 918949356 866008381 753787645 497689109 508621104 771164015 172153648 816992652 416067292 203292827 94756846 55176448 288674629 46212463 215777687 382936943 283317613 33936940 521983416 826341413 784530934 816481170 554746640 291452027 216602227 185606689 298665580 461704307 869456837 341059884 126705470 347397027 375224252 615925949 450366325 272229046 739406577 53708495 913949775 951338206 69449645 755720337 294613805 443331697 785009647 765074024 170919680 355336896 446872020 200634563 527119604 925458705 848033524 244633672 59450228 894343825 603089154 224191969 633765112 935723259 63747870 385305950 720494267 819194619 523625271 271173601 396578977 945933658 829136287 159817979 67091957 357174802 80052314 747023982 680007862 352733417 433585301 285571584 340329554 796568845 115877667 128535703 490541464 106482032 442942462 229646869 430851196 327967710 759909165 547216558 821451220 643811460 887844646 432350076 115996776 943862968 764834897 658017912 808647134 919147890 148163825 212352726 955957192 103693034 476837343 923241772 732149529 38824285 238893411 433178979 163926309 880787192 533314561 32770480 570191151 775260070 885760660 899211880 366395810 370883568 366771962 505513679 7588797 16719472 142380863 578228540 585759055 165876993 429611233 915486567 907286801 324922528 45322595 474374618 884970974 652602654 570071926 657430013 786885263 504669310 809566676 202584505 682144957 688988075 584127302 621721297 172080848 349580472 225405241 10145801 514820580 49163928 988805426 880325382 422644952 346335613 599715647 466568163 579526574 93758896 703035113 230252666 99886212 694006763 388987474 476001549 995675645 390732444 893154694 499763052 952444342 827820293 319945413 254746468 384025115 198521147 899090779 97679534 906110457 81944980 4883514 264198031 414445484 47680987 256788459 289594568 755695619 219098673 844749478 515551491 263930719 129835058 791929830 885707793 159476044 763875835 731993002 424665360 806508867 116053064 870406950 506744348 463537327 22580202 255814081 145614675 740717233 273793147 73702493 974863651 561097348 551147528 463648521 778704859 971761221 179440853 626912081 415940282 21439536 549574632 698650334 819575357 562540073 280497039 777550965 692999241 482693209 732265049 121096560 79790597 716383961 976203254 557391810 706382362 836709732 695880773 572936968 429139221 988219789 26026568 854765342 464013639 515491390 648901867 702720439 449919252 444663258 728389521 345444086 564217086 804467556 536207858 773683354 596591279 899332472 523284734 531028240 886610569 426821859 654539699 428203406 467615209 781490362 892340968 442013378 794035171 149905689 661106575 185749442 474247058 680490097 751344816 317704084 864917485 575598470 412619037 925990822 952512280 460636728 702528978 520356674 962117061 634225867 483973335 958344054 11241149 433815639 12685614 181227214 654212594 126458887 337086468 167691221 503006016 531262831 292377226 453482758 579473432 637445011 190873580 549847281 771903713 997771995 360794896 294374643 434401960 366413429 727015476 547739618 30824007 685038305 982312263 463841266 828093730 470086225 171533801 106292587 627065426 317835173 103423919 59078778 702673128 211965689 922856582 542493972 811959556 615864786 420201306 5632905 528774114 432933213 431831213 479610022 393300270 912997885 747786707 716024420 820086568 786287498 570545627 812386696 608315355 641864066 87935459 374584114 557053948 879299754 21092756 815083367 789757223 459503075 577079853 801729122 840453286 129331560 697972510 418801046 818553873 840123232 39922392 759718338 423035228 400063507 748728875 324991320 463304151 538809667 612426753 707394681 259464023 215864429 104159112 538659610 940264424 884996751 998056569 19151868 340363356 222758960 671358231 590747182 797837859 193866801 189437209 579216206 466707051 209934987 869102220 793234790 754676689 967876761 26042345 202723023 216413155 22777370 46386354 17768199 4563241 746901131 63842690 429977359 487058337 798441096 554160900 85878423 725563898 800748974 959245141 361078151 968726448 912839932 965740721 866250137 740741796 117968327 238875964 867492624 699826208 972277280 865807761 689318412 465716754 66650577 847279186 187922103 411558751 587009319 161597154 609202355 268907449 556698613 930498043 823835569 674071980 783190262 940979233 700560434 584973382 797111360 210953311 840041173 753380925 25861608 329928689 552708597 190035377 202652239 538299660 728438858 613841777 937468637 186071651 4987904 270755587 230759056 755361511 39706759 546669810 149592178 939426995 855790178 229830542 274776297 984518582 395811866 837312431 452635165 94783923 6094093 578010593 460599575 519883140 891347877 687483191 658286344 398823114 355385052 86183545 347889405 714825625 994730922 977996059 481596672 864758110 586631874 752595874 322697170 248936326 887561278 178746726 342313657 510993715 9397870 155227905 712864871 248569827 139478819 433034012 817761969 780125639 555129687 275642184 885903575 282380162 204404476 471044692 389586450 698525430 51318336 333106209 422046405 607133540 857352959 382325626 31588300 202574362 348333628 828851800 469452201 654128762 700512230 877039353 982488992 297139123 681226018 449510671 462842893 506798103 41945271 330393597 801566548 344570047 688596408 807374968 630439631 135853668 440183426 221117916 907058080 922250995 414028091 87481242 300585662 775458170 843434758 187807749 482639320 196625959 895992177 346190212 507739899 257126729 362784329 281400137 652099182 252834245 327316000 909269131 891990498 279987426 972397988 988729283 415963343 152289385 414033461 742572497 719658505 247439935 639517798 247396314 488174098 676470910 743074430 68210623 230663652 828808392 966065420 827403713 16252509 671395238 417638406 180377669 239258589 86872778 628288711 974208144 490921211 593539762 236014654 140291313 89761994 28632752 970969925 26693102 710619510 483438925 489474514 925032384 602193544 585315229 837123109 985667484 448575706 447371577 984080904 802069039 86112626 992020408 807629471 963660755 665405098 923813233 834363485 114292630 152905872 459085123 447137661 36641102 513100093 989462158 677266311 626050874 672794659 648586406 401327591 337049743 171140530 42141221 112385933 412408502 768819767 212776916 567978988 854826526 35199255 715174369 587674737 169731935 831528903 379200122 540659863 283553777 561058031 354119997 653082837 304556819 945245287 449594509 537689346 492786368 2239276 826510806 999958085 886141882 388397537 654277365 247087986 563256704 201565310 509642202 309500683 668521892 202690064 515663371 345961194 273911692 45237593 163737647 74136795 302226078 1902158 424250598 225625726 957662972 444016688 57779724 259453779 43413714 947513741 136900329 589334070 697079619 788112637 221021151 220275755 795643791 632728730 128247630 171683509 838185535 351948845 272713654 870577490 484698703 710576214 929877993 49728819 430220476 692516310 504194633 670261726 530343065 631450442 624986695 362476074 342144551 233909356 556746664 263241375 502887311 236552725 979270388 934053809 132655470 968018963 496522343 505336540 45279484 5704037 366711700 807871948 871568125 615639461 606418456 66043890 166571826 447142422 715826365 991435389 495288600 478328424 756411592 306788522 762082919 679815890 951903083 975422092 146350707 354850093 707447546 799138263 301249743 223502334 816761832 153550291 603075276 758581139 816803209 912143078 14996064 65268940 443192759 973308233 49031840 313087768 939049716 846484630 558651882 963476065 478900328 184334091 716865725 38025974 476688201 263531354 70387882 208375605 882088131 951812801 522224384 154795834 718765314 611534483 716073445 646656244 773704627 166123861 52601193 487047392 495701265 183919296 733753511 16951685 59980879 449467996 371138120 582452250 254634809 547232898 915387686 354749155 634408646 526614236 83946004 496102603 578709244 989089327 588609763 691014456 822061715 694465072 866871068 765084053 693526014 808765666 711628906 708180271 356379528 526907018 778191379 689157864 903921155 419083418 811916948 898300643 897061520 441259908 955986286 29737110 482595619 739653092 963190693 197657138 589458639 216532910 684285332 393249794 800497844 251167424 803698794 481757602 967924583 582876251 511386426 37918103 965137302 664874538 972423042 282031355 406820231 719234751 880056057 151050583 917580330 303951629 609850866 124368518 21063951 447879228 565576793 713348001 258416404 129895382 449495000 809477281 290730349 632752055 215007105 169136620 659902887 371074217 263819211 137590655 768662193 744539373 795946740 729811588 635490767 396951594 87265717 247804400 823784486 765547787 856212533 616692918 854670104 790828668 823114227 131453594 147071494 862780072 502176590 238178809 472221563 164819767 485804971 540934508 929767552 483633240 261290051 737662316 997196475 677357932 939171790 280284477 599219664 204009429 594543846 938779488 479710005 740012987 463246772 985587339 161382053 364753160 655006089 376850668 85426178 814443298 401096247 881296075 660177286 645522442 101516475 617636735 818911855 132883529 899406526 580412859 863229128 187062835 591590194 575625868 64269823 697709796 818724065 360263133 555392146 896112520 730369937 523866343 960395729 252437376 280615808 943161875 233651543 281842461 510821425 140237213 546479441 738597860 51235899 780681717 100536006 425933384 847804555 262693722 371648943 865083180 947338230 491849792 62538524 620924245 821267307 928479905 450045921 175412876 739961317 443972734 480467321 708403848 966999622 993873451 21616596 259896529 57460930 162786394 64446117 993716383 85358377 927487809 321611133 613180054 693910167 114298996 846407432 474705577 32626166 464448035 604702991 571640296 252102568 576452856 892230983 408741659 405785305 531527341 89035389 849390980 456000521 65084121 540005359 992762557 903561038 941422680 536977963 166001502 317530862 729730866 809284459 723999467 545181916 475782747 843773744 828232173 211193922 276407483 901142973 357520431 587523886 145448959 939065881 160047591 82305112 256899130 301144590 607281994 395862591 333192307 11177741 914605604 868447151 123567717 495681257 88494584 909519440 192444772 718480506 148593797 858203974 409856338 702551181 505884866 603772886 709703139 268625090 328922858 558950863 956206838 316586636 618518282 979559212 116243383 368286638 717742771 233166083 602242387 186405434 273431827 309137015 820383650 591111538 951441845 952721039 992707506 77486633 873082326 882625022 21431091 394938334 485267041 302661920 926522794 452002963 362942696 872001322 179613426 796957500 833452259 14713515 643333310 769042493 959329833 799997510 271466775 112381243 472217447 498523883 231130495 751839773 326270325 969853128 71639416 772716557 278546285 522518354 551092855 1423123 55135768 923418728 674038622 692455245 366692930 612392799 812530833 554073597 5160087 877138500 565580956 400185808 515266165 235567750 536082815 64738344 486500127 9318942 32991290 611934877 773701929 644198268 917636213 516375377 737510871 350253040 519291427 292043173 941184262 827685749 827373585 823913306 313832090 478050220 849958051 954866054 836093278 862007617 933904948 640689209 301872591 500991311 393391548 515473825 46961814 935167998 676529838 832274057 72372400 919312770 423097499 986341211 188484357 718206448 81531123 838925084 618010186 880373480 673371966 774927407 919376617 171715930 839493095 360475955 947637664 25499502 28376743 423318548 382291441 234478443 322203000 578949419 613812057 333380495 238995766 420232896 212268895 204248683 83948012 263763156 186796008 494634702 225236404 707918802 319658548 384769626 844502402 88156930 812295266 29886304 598709659 938892889 498409556 365149534 947757680 819736019 741123089 286374390 913030628 443827357 450992490 946748194 592242789 677892447 120575372 869929116 791874495 56798927 631466670 133587782 857225385 994707179 575145302 496231977 346352990 634189174 886698729 690941996 810529344 855714333 946655147 114458121 430149615 946976937 395796204 860688344 7492832 733423078 501437752 149020427 518339732 430179991 752992705 557022102 697968527 805259807 697526342 571209788 383451314 155052220 115900655 160135372 333084407 66194525 704806698 158999019 917434953 506571422 421359968 897790410 87705598 85717004 142934092 504810442 584970313 690440563 906480703 933471093 32171467 201167885 782806559 15701330 668527286 601529099 497316367 180598917 535938206 877633034 545418474 561765116 340248294 697800716 340192127 754577629 457924038 452075585 70621320 892304438 95489896 165539964 169929739 224996496 764197954 915961871 533481131 872147201 691919334 950920883 666633958 791467229 352353160 350985120 724060387 225769557 523908982 235133389 329294668 531705515 985549202 354722778 469939478 367372979 214655984 378742437 729186072 485515567 504715572 961594600 382893832 119672074 16950550 923821951 906719599 810122397 202954198 571827586 272997268 158259319 896595177 396856065 92247331 868333948 69224802 393972755 116250474 25074988 326866541 233083828 329779691 835264950 949716849 515895803 898413470 792260267 731902558 121327829 226637691 868203763 634149157 635925808 164345821 688063668 256116134 790719656 858964980 404435929 815365482 212787985 764396022 642626845 791478440 908534173 690019851 912376157 419993241 374883797 111062519 682665145 92524610 225752666 686947870 475237031 443684326 842809556 9616558 257041076 59566877 892253675 175893097 323303881 47141283 767821355 633947675 39019438 679383168 576062690 78219219 209492870 519640520 582880800 31319552 9209855 133008931 481531974 19777092 834648024 536933994 631798292 490989676 673880840 484770827 742383167 555106694 752050890 390336933 222851241 794594429 626593638 344163502 145540819 965727939 945232443 370167848 148619118 384579445 998735709 227182694 872872934 163807142 840892169 172918907 974151281 25556725 922262969 951038144 614739702 144952349 479573558 860281481 466099539 678989087 209631673 83507150 588571514 656883577 868464916 376515410 287603135 344359152 468524368 969162078 862496641 227385121 450668376 822456426 311640989 995975498 36609202 206103242 933565568 863778865 652478039 903378084 161822796 897794663 583661157 306157796 875303277 941190744 837568559 634563936 175848205 75018481 552485029 792670532 231204804 852276965 832072476 187819074 748089629 848861597 962883756 166384331 674964945 41313734 862218302 614889799 706353506 70563622 796833298 684818742 891451751 834273972 776581850 998845007 566562546 97115577 46545218 437240259 26910420 965513988 903170186 1726826 876842198 73330439 632029143 468227019 460508000 867138002 595416939 428405909 141415026 217927632 970154428 948109015 647841708 273041167 558300343 744557378 291782363 700099191 516979830 592671901 264012646 157515784 632758248 937593943 490405814 187771678 832814644 731420004 495855525 550061896 913065351 340698681 722358393 91832306 766136300 4193410 998574487 949468156 579514967 220991536 935468676 703885126 456422510 591849939 311994365 872690802 186155982 550941786 731344196 695670200 127244612 110839231 981094685 229228712 556443739 248691464 718997181 249968398 750971164 277754475 834381670 225287923 742216834 539015768 924590902 996189331 758626179 940244328 929264924 841013686 126287937 378664026 507476393 18073093 846939798 21238590 777972095 385698124 958969301 430940497 483338901 612926849 7623379 490083633 142891131 65576998 647317858 975827551 473158171 11001071 672848043 362156397 466288709 778303959 181917393 39453794 810524434 404740163 39779479 878951650 347463913 820318645 594593298 175206 962432923 613921719 444034992 566120846 196178077 340248081 11090246 971463940 319033462 871415343 494563674 351705516 943327248 156299476 929338048 675014802 165627487 992200238 769703101 419338872 484389273 475194610 577342595 128850578 110272265 839211788 675244854 729499069 540998039 818062064 942322312 569626813 2487113 185205508 266215188 644214 387578246 123567717 148070428 670191416 553347506 297114127 189627545 593233544 535157221 840685999 37441627 788334219 960810892 60510605 221424931 321714652 135853064 615693478 280612822 866634068 34161512 176498868 367509561 44597522 619113302 144467301 897309130 737293090 816298394 6704519 112177076 176452040 251585791 492399598 959525257 908041429 704336283 299892607 504299101 301349377 218242008 729718931 28196270 522184732 109524335 407910687 483671081 166335174 924820579 123762774 976389693 600041886 390443232 622449904 566776366 851783402 734369594 364017278 310801179 848539932 181894685 14098976 2561795 382557986 189736330 197220427 584387703 669154682 187413649 803284900 123304169 722713373 137437067 919347571 165074093 647051350 838830824 705527597 911608830 962584568 882467753 408882007 104443106 670158414 705016264 187775043 814687615 784581344 34844895 366125261 769630797 870723091 90177332 963889654 384280424 661379849 269752938 709965161 68218940 178970404 935358921 33040110 690374391 931723340 298021087 542254064 755147813 921506301 220805131 350969150 589454313 901233846 208513908 239607021 297623709 743989376 643156291 252204569 937284545 932269050 580697469 31622975 615657939 979330210 464754480 178725021 243852935 776310987 867505256 731796743 869390180 292766796 949027834 24703422 722357067 501544585 868121377 890716464 49889432 535048209 512251386 352363194 567557515 180173912 287939698 953261642 613618832 735892552 747918915 476353610 609708800 350771713 905906752 690829272 278960998 910399861 5285781 48299261 408899007 170168382 904084760 283661697 80760655 120132294 616682917 247978785 332038396 262798041 165327639 185910607 433409573 328958924 119857239 896982479 852442456 990979750 730693090 530040908 201488835 82577089 411707358 252161020 924060333 334821654 103215026 691740316 449473109 365364444 283442274 91189370 364627362 714461964 201493820 405522804 108269945 866631450 132009810 671652840 542015985 509111529 965762439 681586584 431240921 590483432 268330544 42927721 297728511 994697134 468357180 719179555 969359884 981575810 296264701 992405487 582402892 589153712 975494443 902751410 16771665 716796047 558735808 623324333 895785640 583623887 209554303 352793870 853101179 143393580 934085794 74813367 468529835 508504940 261149256 671243260 617847951 324199118 922217421 397209784 16056662 339293909 214053491 869629252 979950562 719854372 511936544 435351683 180885840 681750290 71404390 334922274 427772744 844921038 496476386 528439127 419252950 369210623 667977323 151150694 871487811 166867869 974957756 570676000 343528583 109160729 988042355 82495838 681777772 104080242 557912584 252431658 734181397 337550494 719213604 963996483 363250902 289122330 116928801 840015099 981492047 858373628 402429033 942587451 571744382 753562443 477569236 141560873 512343231 315362380 521774684 448814462 278749005 788642263 585801312 411324894 855854019 497597086 907329484 756227362 726851502 915566385 82844549 44529096 242933291 963752191 625069189 980829059 572797243 126705846 288253803 172698392 878696426 122856690 381477782 132425672 758473579 726614898 169153256 430091578 757258402 678480458 744645603 186288706 244037245 68164900 168765174 603758968 307486919 903942607 831025018 978823370 427633882 656042090 993214162 657857781 631047355 304569405 529251236 71251891 667513226 697892905 175146333 710672706 186324454 284106605 790137377 121123454 706282632 978401482 824540814 640605615 177739342 311575108 197223021 343825787 98249962 328528574 938294778 480489518 723187922 520588032 575769156 604518334 613800224 511641213 49280309 907805111 8261446 997843072 816471600 141063047 993020792 434525483 376726352 214010519 637356647 65262753 519734903 778800400 670481748 896628160 683559790 714673514 995491922 102848858 557281543 293986241 371823083 40591617 203692964 253281483 2442931 928435434 469603661 515452379 530101008 860901527 429857917 345467224 431483185 303852030 432610601 500634949 252048749 963976026 405532714 434991160 143509728 555240928 499642085 743733789 569284694 928353284 565903257 900904012 238816838 696907297 977796956 746578725 543352748 669026899 91428826 462473736 829471021 418395750 87569746 282188853 757312011 956628929 284779435 184161366 436182547 594588218 755814950 511082577 673426345 120628639 698365675 562996681 392150642 837076517 304296244 121804165 571558427 916704781 221655735 557572198 858269 618120352 554799731 737132853 737408072 667982175 337205216 658612174 703825717 967304895 733216304 364603450 992834310 386426967 677899547 975889391 490555482 236894323 384435030 747158255 746283943 241880972 11811080 186007344 44095985 928999027 864842413 121621339 2459972 828582582 909516053 690024 416828956 782353951 293086012 203976500 547895549 543967858 300827631 696554105 178096087 52146326 279900920 434677040 863828289 509389538 745252685 30697445 130959372 556158367 824819188 145978192 778165340 161464564 817240280 649145746 755753257 172016458 945007748 318233777 985716770 66997751 173535037 524746231 922200043 739338267 2198577 154811652 956092857 177782526 468414492 68753127 628581294 195088105 611294648 950809027 384365041 643900855 115917333 656280780 892575499 678583437 33522352 566849858 975959963 575814675 54738055 348714270 371443433 657432735 265370312 881463523 79904447 388698292 765824141 487267492 906702666 551331552 352371361 872546032 938313549 661259183 124699142 645888880 358872694 206832622 361648527 486133389 361532353 768531804 617204961 987561813 811362148 151509736 156611412 702959475 524811825 48757642 752698396 707864147 193564420 563585263 571492937 759726649 969222755 860310755 953201661 666634053 215265864 128457198 65225625 835264673 110759189 508185692 364634706 739938266 73226153 694712107 63056825 327573542 530614944 138386573 305133539 717720434 512233338 426403722 958142931 176058516 691072109 69645325 694382826 765901557 165521227 64819069 849797928 178152118 448018369 682404735 94796385 29246535 202620498 6721822 399751455 482227487 993808048 807323728 614537173 926248546 282900507 112500366 642252418 925866442 124755907 937220409 905793901 181238052 600546432 551100715 891540384 141038369 316969642 219925130 753748533 954409926 326172575 388578059 858618746 965626848 365111017 754325559 40911172 754966993 741948156 687859717 934750979 628790428 335180917 412408827 753626645 487725961 513247477 910656451 516636042 306750910 962012766 896056257 555674847 994555429 901105641 573025830 859805100 456610025 463014245 356133735 257509161 203442859 650581721 751487526 478717800 663846843 941086892 312607847 401801253 637645890 944854204 665791938 810870399 937860447 423124465 503128379 933675024 535661241 66202526 254864816 656465314 342216577 481700910 477070827 771400531 539980385 261705286 789920410 192542976 634590603 518880904 781788322 799603607 187308955 508011052 470561243 963100771 299429884 600450166 151292906 771895998 43727044 945193355 818034984 975806940 746103546 921346712 806201794 634675421 656074266 219531602 384396712 567748407 544138960 938394476 790743027 432811403 193034298 447243258 504698640 720561917 186789731 907440953 310466194 154366105 653643970 279059894 834982557 178351431 655795931 334000626 217423679 808560017 235948492 369532881 870879983 952425033 991891766 702968937 283961599 571659 411707748 844380992 683371964 19430508 607321105 686902801 168782570 119166639 245151295 19051714 313766263 742520753 888120378 594729832 749634119 842754042 383188546 254223129 170909651 345898980 307226733 737185866 349623627 554853230 995854423 744093685 235182676 284425826 781189602 874174287 325076528 390559060 343073879 174946029 56073774 315431028 403415700 942177762 336091589 375797873 744418326 21225474 929379018 250718667 924363205 805217883 743343745 661510504 602733823 706163539 49841882 894215193 531374233 8002451 148702923 424236232 484101960 78314311 797358582 222430240 23533478 289531418 496048162 490967396 820332062 533515801 989001603 122806131 940995739 330188164 404700374 452577915 168257349 767705501 273415529 678280069 959083579 977518391 991833078 98725774 341938156 61506680 415350075 143203944 646982817 619021772 89109908 666216888 358989269 987287517 774803232 566276124 856191848 318327963 636915372 676929269 783553890 983087162 43457064 32775822 101246374 560494614 426446906 365034111 585059030 356815804 88651352 178299804 746358148 715991769 277624634 832251669 971821806 394955237 477863773 330023548 533973855 331874249 877386624 299721111 408031995 327637055 696755196 849937255 920308576 81913220 809093846 424883118 750182985 336132779 79622273 308512973 450498039 584306278 926250927 556657209 106512241 149415236 61202374 134328802 804987283 496877088 644727495 473093948 554820821 177858654 73591029 266820449 420581232 93131066 817211672 978465844 737966774 626242794 235378620 164552245 908108889 135327389 90199381 151661980 817031063 773692835 910156633 961141380 872061414 971383854 501544085 461206509 441833918 40094288 723771552 830428617 431631869 977833900 416181346 779829586 60222963 41770268 185760048 898511219 173318840 373571380 248656198 526139150 637580276 933675270 626303603 255480752 761595245 866464121 70148034 696297611 702043165 585752813 622757925 466482836 805296568 735831099 892819673 74643981 51573555 313226508 567030373 627089805 283837383 969627057 674583969 332370826 521954478 833258216 70583994 635307673 322455315 611682715 919295556 804812689 711199311 847263054 590279592 820133035 453135551 866254879 674857674 197566066 392355648 865972160 807139740 572357501 677290057 164556433 204209924 100527239 412431472 879894665 384970615 227902870 729736245 751398594 583753568 597789522 425326283 656125164 12271161 350040153 514757023 64156627 94230250 170766444 283875584 746342649 386456743 597956888 635498191 882105401 816558069 404347936 413002772 21620415 63341604 248775575 71194761 359788012 338423137 56123569 72687375 167639373 52251211 260319535 586543088 5042054 325894557 841054094 446609072 390157267 532390668 19252824 440434562 741413249 168081395 445047226 84893019 246203758 205631507 740494579 924928852 324549998 446028938 490712999 826617206 378202529 394292655 867758570 34305190 564766642 673152837 191525572 430511084 363876559 429477346 87685933 809033612 765774216 974621372 550401836 860159395 703582093 670307251 79750147 834204517 810392369 271484248 932478498 952187979 962143217 420426801 203382841 4424016 532380678 842029209 548262378 767191230 765044992 859291456 527319191 277719015 415432812 639808326 729998112 252843842 548569638 755139955 829755782 350922059 814243453 598186340 465090805 304973869 176500829 864568150 491855382 800739120 814793863 844949280 707580550 357464014 31683358 716372612 296966187 746547724 396125718 351738400 837172633 972311327 452401005 412281544 43516042 634016280 159303278 704458690 541275160 48404320 245748569 845886223 553703375 77892949 98755652 853513862 379494696 996654412 664562753 453776230 171027718 515692609 472681790 247311246 979418153 432972876 559689378 823003497 902639267 474829243 59664294 632709051 82424196 508410949 78468677 868111403 406602396 593894233 9166297 117315238 969994995 623167630 722996431 897914067 377982991 42854318 961601621 299161135 597938204 281630692 564297179 461503482 273170331 573607511 87227927 699642197 257604977 568686331 670304467 127467211 814981527 212646671 473690674 36747658 762923531 319399143 671957639 924429206 317788921 417158370 861675238 553297009 560545026 669983337 461700695 154121558 135657372 56669106 542432334 147303631 825979251 189201443 36314850 656972680 66310721 853853129 75453064 325312530 400869741 451235358 855955384 477962740 842882625 55140623 676135020 303923148 310001125 375609396 31866717 237416053 633644426 831134733 784571935 829230813 290485143 204066311 390584026 99201134 925113440 471882728 23906451 64272410 488881656 652467919 875539772 879082206 431022164 299233598 821546437 841009411 172350763 174324492 480034188 912198874 833303386 545692013 747185183 818605461 430461902 703685189 309842251 832861567 834072426 741091141 680786604 550134981 788127359 665957940 603909559 501235555 759802653 683516545 25079528 507574385 292882678 558191463 136515600 407445540 146477078 267324394 275417008 833973679 825439417 671603007 333263536 100764376 19193840 342951647 537578215 730950928 99121313 693792358 706575384 200892974 905001797 521364220 524214579 980370749 804476064 658653295 272110211 701308961 119306369 963025016 541596127 472362000 602577974 946294916 73428658 792252208 816847220 547743277 993271139 996685613 767187997 963200375 501052581 590352664 488535048 658647676 982524944 46748792 90049358 241427308 77579586 893261777 143728387 667729943 509480446 414300865 480219318 96329870 873273924 602203629 179441818 34991965 252523905 90033870 110806075 704322168 664323565 153825130 910377809 43214161 479086404 594961740 22973082 882408785 858420128 422378224 901229753 837158113 55449787 609218199 18230610 236991388 755904087 552028904 470522201 710721203 16998811 750107070 268433475 86457487 540378670 499357859 589543685 768739215 955687770 283355424 446708035 248354101 182385377 104589767 132474380 165462207 707977651 704237424 806299323 166216774 452886996 260210652 418655894 592681506 536517579 428789331 268172079 555033668 744965333 636757737 492773482 698282741 589827347 854568914 64708794 842821866 214881471 180848586 337700999 783424044 296899237 793198510 333159383 554337571 644492063 988476120 435257374 603099320 560263829 350893248 93371066 321314438 672161637 434311040 968033672 915157014 657618840 641058242 28120549 735129128 377954444 651496325 841881866 879570456 877038987 370965307 503418227 685268477 429173124 21067702 610893464 747998676 139997518 535999503 901053902 830844784 316443122 486575493 557743804 657496872 216340562 152967147 925042631 995980390 744928483 499768209 462796411 248137917 674603158 576913671 127243473 128626441 873963295 246288592 523931285 366925265 173130303 279431835 697928856 206938670 672696124 258257320 590718064 781914626 965522799 713976321 330491890 495187279 319706345 537443932 640635599 31370148 622583132 299794554 825115024 253060933 455435073 646069992 927558996 181218444 218210964 780570301 553149716 144633495 886029806 87948542 525829930 277786022 890275688 805887657 300597422 611641987 222875239 481948404 657292777 435106397 993623016 229765165 47222221 52186680 686209070 384764808 546209481 285870582 148985982 327224993 33773586 683594740 965622155 973728716 332513927 286243994 831655397 536968467 564967901 237479717 291813039 677532946 92234208 288923217 50294363 743818030 147710402 694137724 628308643 233988004 346494671 74253683 178882516 58154570 950433456 595459559 87559758 997451155 325000060 761133275 917172182 640625750 943913417 149579438 723617976 312075061 856814368 814822881 719279545 98157945 601803557 731386173 570543442 843161968 839850327 326155939 876730975 43729238 509363941 856556487 253921251 442698248 354293569 624663115 29003528 92839170 340193075 251262664 179510671 813239091 687987700 940664603 600161785 522323661 868427454 195008787 872953473 295307356 607558489 171640407 660784520 708788814 479007935 190555890 190471880 846439379 969784521 648177966 220833047 895734021 234971236 110604067 315264023 763022138 771995841 486052481 647418646 352543577 263052436 94414753 523127953 549264142 639491788 621680415 50830504 387087669 531895597 504253953 134867496 297338911 603960455 660769733 125474207 289849249 274268287 887479325 460425127 722620834 614392419 960187089 261524229 455753255 13921943 960076754 889996623 205250694 686528453 755818944 43299556 285679226 361614030 596393255 871400787 764738200 49837561 561266055 714698613 910319528 344338173 238535419 960494975 293597253 33629074 741092874 45236395 968300235 425946703 88502078 762220141 347477334 400099452 993721090 198817871 229927725 952255246 829966927 105717459 67855272 698256153 470029993 490776580 947881614 153890940 662884024 322713819 385592506 33303835 854249327 724576511 390796711 53062513 920204310 280473221 926353082 629029794 847568584 584595390 623004190 563658127 456257458 870479189 683925295 653389385 469871595 903377862 887018073 162492734 539052921 10215013 630723210 961017211 124602983 524198459 253512754 743613885 500398402 433711818 258487916 63793934 249913026 186078702 735518398 193933515 611609363 157232440 476809245 803359118 341848573 64427920 965186756 625259999 542186693 730081944 408181384 544956037 684926589 314712568 118862059 378768119 973409887 496983239 348944909 24318793 262167029 495497879 975701281 1059292 313220091 806009415 631663436 223091316 961945732 996447464 696985636 962528777 976593540 123661411 334036883 695470840 156634245 484057596 988675974 536682537 944977846 430796631 620991490 698550202 856871739 149706842 497539866 620878900 394975456 587633654 528697860 235985272 301889187 215592754 752199412 898185004 473063614 533429260 209518179 651618911 513152729 281056 782644975 784654182 179189901 479480358 673839541 910114402 313690637 168543208 274007747 93354178 426297037 840170758 326230466 508048571 605798436 359631827 997309409 830047586 990024007 877144526 191443736 207324068 535712493 919265374 287656792 449779135 744336196 377270928 210142181 956694664 97210191 581557211 467209893 709244909 96008223 45592145 250586987 9962002 528028056 851324785 947483930 476892975 437749437 82674753 523229724 978204635 555827145 435443689 151444633 507174777 648060105 262046263 499380416 419392784 803889583 226850748 115486329 920719690 654286129 591237673 397560528 68570963 933362385 148680693 195968848 405945243 285119654 440456136 572729522 645806604 844952414 680491956 167454987 73996413 98050767 491984491 12988831 942992732 179563244 199956272 13019571 112897052 223506605 994911181 108378232 401931527 2813676 770535541 547569943 972331671 965005270 481577495 967571508 577104448 239169191 261590309 895149192 920762205 428913289 146082163 574855427 947090882 509401427 618346046 368012164 402947332 145237237 977461415 383952411 950149770 971432747 972096675 760090436 339462258 237586960 448060485 607310023 980159952 69237456 620714626 643153899 259119943 862539192 20761675 808257179 770879118 568573272 699772557 309737633 45721197 697659644 88062170 211016160 134461447 264668600 848172279 843946121 6150714 222267141 302845393 705131722 174311437 523659018 609775076 766944431 393188020 577403446 570892706 868043359 788268136 446306326 365481232 303498319 285941924 774847456 722906797 157876083 162763609 840424967 63499883 82783008 880274735 973059721 826769682 632543348 965821535 447491429 308080267 956319125 770032714 444015128 729050611 177662414 157581921 118507079 647256959 438899473 44278507 252547559 951751514 876427716 213565006 754208609 702050108 130583590 776245059 822721785 12770875 866379198 246895726 997702316 328368816 65702539 217824886 204878630 457819775 90531811 550058512 159405931 498175690 714740177 897736040 359825038 757934215 221020660 905657507 304728103 696033861 304998073 464153389 47439947 712105253 340442259 512741816 232501283 307371417 45902702 993462798 598193558 92563319 234395221 981928884 517790475 145713991 102030465 838392009 111548008 469202977 387494447 295924489 953824418 514157001 94571900 309213319 107272543 447590072 994405457 493597116 113673688 966489517 872729613 926532383 360281235 648002200 12735417 557912566 6272863 230854302 212222280 403499398 613905593 625560867 855090232 168820607 346922009 642501642 709015687 872849101 1560554 32111391 512089374 598218215 760693332 485058125 700118278 523441513 886685493 638502866 552782011 994637954 84304426 490500344 416797736 841988224 785805233 490544965 677696909 608176450 181155954 483147870 998781608 112075149 548966213 851760692 404799379 45224561 229491003 264816011 575294093 887124712 407923022 518120854 193584462 214297425 660148618 305569168 825803193 173047180 456119301 565597200 390206545 547537597 742391945 743457373 388523519 818749964 239320689 828475683 548650961 84220678 702844260 410505018 795857522 919093869 371108115 773180380 71128260 581787326 211142889 763901405 499378517 30269624 459591298 906321989 656388110 585345393 3317737 841061743 145961631 63374854 140448358 884293457 70019068 775184911 915938317 561253387 585018615 392439135 244112637 882736763 670104905 668575445 696030430 378479535 976282545 476824576 706712775 472289291 60461093 212769517 539689257 994251696 193591338 138530869 998367154 646014091 120856159 114104931 879084719 303838741 576460822 836083489 117924582 958419463 917796409 832675751 575268778 815992141 540091639 88731593 598112859 877396726 155596214 593602760 886896866 541262964 178443833 667570099 366807498 1740856 337833064 700604330 618073000 359682007 861102599 696340435 599522656 997341765 717602409 638413381 82331781 108193313 237238358 32633748 748144552 175756981 106549870 631346510 773488957 643271107 524750490 742499759 528957253 100264899 836887158 792727983 863686704 475482405 317645720 175287316 160523260 55964598 606608548 463820008 854738556 424702280 156785307 518627227 30351196 849561122 890264169 167947753 427433849 642757787 978865081 344049175 643672524 920117844 33193374 278605658 362217137 843478722 112932263 591971922 682548441 706544725 430403708 604388411 237261279 537426668 78644708 858614216 426060368 246734603 896927663 766354316 202767498 139311465 824929325 159809955 718842380 72441065 744570609 399983466 823015505 607303884 567864812 905581180 882236608 670614258 356464533 586831626 449332246 778201964 360025474 816242661 227788452 934342962 930932774 62107476 489006669 781339392 114140918 888550669 199548122 922108098 584080435 354634118 90943701 988391704 433508889 308067726 468353412 118954757 516803162 498605812 508035960 959897657 225257941 327844845 285470543 487523699 557276070 338839537 789912230 493512107 956585992 460328061 172635296 871236613 702007655 38187827 933475053 885868951 517790474 894733097 974143593 480381035 662027068 344229926 677709105 843510377 764845650 705114666 811535931 871031571 917018219 106605550 678615320 447888550 175871020 293469907 173051509 787703732 614217339 502788493 767719752 767200869 742548440 680489308 883003227 488226472 603703563 566506378 253397834 465466482 727331054 764381763 677740913 169087294 74251890 796855868 882280171 551811646 401350863 534371739 50954398 625794242 211020414 432936795 491497606 389091140 434336516 185894224 251549041 212470311 25744976 747483182 616072126 189715240 191199737 942712117 500817939 802896319 246383358 117697065 828683328 2661801 732090885 215654948 312009627 788401321 222752670 978571946 857097001 341956711 509474665 528964440 445628650 512305199 702254829 493425666 485109639 228605053 472835895 419502738 711487897 423369540 487813369 184115882 578610384 315728039 687068563 560214007 152871111 517246920 577496223 481992118 566736301 815337025 27384032 979896104 273055374 688298984 281141020 370816342 390710820 531460748 220488870 163693162 207580745 518539149 662097684 416384604 851637808 72302870 88716875 938041775 107070013 976756388 183597308 706895035 997650541 25266325 972242290 227247487 256999500 370334206 561967061 836652774 26338825 937775169 675683253 967952897 395191155 213685799 319973814 164856431 42696370 696948139 524886042 904024315 550510176 127300594 666078484 291573228 780782426 19440817 301301391 31010546 954256789 848068193 856475366 539268676 170054424 727002513 403810158 740430791 422748740 232662740 477126961 22754791 404846132 671139218 19306058 464622231 183751483 578410392 968236222 329225988 981024197 230604458 825197402 977808495 229541335 142065501 934805618 264501005 974620932 850492740 307551162 140890256 542597326 401944197 221441097 562948849 586367938 614745496 954715301 613587933 276737629 26275771 989152226 536434276 28902225 259891416 518779208 267721317 399265949 742847175 652177328 861351481 273516383 341642212 275334401 704725504 755732349 975975756 435653757 913438313 371616470 608809100 942040601 194080535 308741305 671797044 614529549 922823980 905055804 326044579 936675725 51385315 512307248 207989310 252553292 96471892 705334909 272970236 282737517 816088821 18311543 660141954 770634624 540349305 577648331 760177646 317708962 283286698 560973496 627314368 358121562 45960816 998239438 737054920 406850145 539396176 518559630 981605371 422377676 502337170 807175354 149828550 500639045 940824287 343516254 816257105 949457962 368388106 821637923 805412704 959747583 606386184 279282004 406705982 382317911 19715447 968753776 878591033 16073686 582760977 566483842 468650251 197321951 490696610 384850755 585299174 621008897 224631278 467057399 434098548 394746831 408412344 562217115 159658658 899878865 480723298 375171197 116102477 980741720 240039154 958845784 513886219 440415625 186458241 878886301 492574013 723244602 737328664 315106647 399766765 484755646 206027786 940733531 67511699 852177693 313647378 800933744 344580285 12535039 830657325 156811757 225123043 639958204 818965038 54722782 692032234 121585010 668830878 723340814 747602028 691378423 538618372 940934372 443785223 808475214 769175643 991644837 239463419 357118662 34699172 731254008 724167204 154697337 431550320 192891380 523300391 549188171 626301154 245446845 474963265 37263746 440083572 444685029 84984518 16159930 580234902 497705241 511688623 368912300 826268868 948587539 49139679 298343201 874613469 525688616 640622007 542848777 418409971 927998377 858986050 773316567 965795162 443855054 105791273 436662433 46052933 91946722 625527806 486595736 105473531 919166625 44182249 984418913 772926655 470515624 888860278 958673897 778579622 689494495 487026406 338443983 931782382 122288986 899206318 223812807 298749356 232689856 984134135 364719849 208250546 494572912 955980925 38601017 770133597 229926645 139618540 936986361 389077670 978081135 53276460 292632326 469901535 488386008 292089746 594417848 635159126 720569754 58035060 475776414 351345951 116377917 585167718 807823391 282997085 271952791 47259365 487764563 903735356 561419064 824149076 120179768 302295449 784859109 981567044 482409951 612347763 476656207 316195235 463333886 916244711 86635287 498201016 175160765 980841399 647072248 189447193 763773582 478387825 954359508 688053590 598356925 130621856 198869038 884557572 150097718 962535256 186230966 463630978 650566718 190962687 836588831 612184764 921331715 498869572 425469310 330606556 222091443 417932000 764416266 730634756 43238563 747913043 591341277 28767693 757593455 323036074 358936903 464150782 675870926 119099628 103556560 118968588 940908227 767969166 893335161 411816217 162127027 286787002 241327666 518571629 200087629 877924511 303855899 19100513 943504359 373614069 899390487 193122480 36278942 208518471 888992798 417278241 658973737 812877849 715983129 75462254 949397178 915619381 332974423 134704193 980647946 314849998 398699801 107496842 302990582 262577187 985282122 570152338 478201069 936235771 526988117 410740209 97479210 864197504 899084865 72434112 764595932 107254683 924342895 973423175 419086777 998204724 589218282 423528888 257176653 660614803 517735364 405676463 866702120 686519420 426192168 919867148 5517480 142607311 867616704 268879591 722666652 974924507 201298176 969308279 225893352 473495465 349177948 92436577 374260055 674954333 335153395 186054226 205294054 58265609 871613221 52178292 285965795 234628204 529928214 849194524 943920983 836503351 771610813 798861962 754967683 802633496 968470558 845264679 642447656 548342802 283444353 220621409 195654130 903761511 488760904 105762846 877365222 994954216 51256620 291223663 529383830 349445872 18643516 527800167 72076319 116681617 949214212 935296723 20864724 945313213 630602814 719687073 675446532 395653608 860256527 694111697 574652105 719742620 689443247 300401448 251687998 403833287 129444475 201876318 23065233 704368174 105432850 845896530 327416063 36016491 414149437 931325513 870442982 922296972 648693604 537125581 827635948 930573900 949395158 670404571 119416655 789999953 239271294 602640926 586577637 513351033 655138238 846029734 37431978 691992671 349714445 875583360 564568502 836305934 434237283 646098953 153462559 660512125 657879600 39801027 198245213 843518792 247484075 848960991 156367734 69225218 949782018 843436787 58592756 258708204 552205679 805049950 890445889 844600082 154469392 868330976 48266 760709537 972591992 584815647 808903509 24215941 199478178 156747485 996783354 960203634 663411553 107958663 135687756 819700435 880892700 907652622 619875486 779312173 423734409 460858883 444441055 948565039 200240 524146094 183209135 336166571 105855170 418322358 658606956 282739591 836370226 431602227 838627442 46363458 159511625 727174331 879983413 518816762 586028916 322242756 727545647 216515284 436799440 556594836 192585852 131761136 276270034 657989839 926019165 60350947 346398401 844387848 375466815 273176495 241403392 168727457 626750140 910035997 720699297 206862322 778011878 262396951 329743798 349295894 606828146 44401336 140858074 371949250 919362368 86099096 656195963 726783930 317208426 217535303 369591457 828993104 355429876 758301970 967210117 255108907 833033014 939083674 711854981 29278968 994353156 556932234 137817044 239415497 939881974 927651265 256529291 917095863 232321931 162131681 647219754 635529215 940155369 365943232 328629887 738944801 108675956 679442362 637865155 701677664 469757945 284645117 949283473 825901411 904582234 451687915 467218833 257490531 528798754 572122633 889087785 617775219 466858126 650405223 363699098 589030213 328875429 113765529 80709320 646464061 254361364 357159449 529508886 612047979 610523744 388719431 11774383 95036090 451846885 338199366 542856622 808958757 292158760 120141774 790870429 871092162 847514828 759494552 8330075 313618438 863055194 93405253 708061238 838138324 134033841 838205708 760591724 308511470 430024110 774372051 680251304 841724120 320927798 743932863 994810182 379667836 749779620 745619426 487680625 688040150 13257977 816524023 666990185 518303091 14428722 560648230 804297778 701274570 158564963 999773397 542116170 228310700 726159412 856431660 729501516 344805134 989096033 762416991 903397293 113570425 923624118 743033215 794757096 232956390 966378476 597552263 449185586 126050450 629988877 655407252 977353701 246688834 988268584 831941854 736248619 372258452 645841008 244085292 381276642 734301144 878455337 73097175 238323440 88177228 753774351 147840185 202641906 736695999 877174953 381772156 205141577 40306711 854681303 301856642 343028329 156748724 430107493 195290969 121772446 956404909 713042250 292827717 970873679 428501935 276021924 187111457 509771135 976666217 906548084 291902947 660698600 143370533 661343573 58681019 155348476 231421301 206318316 967577706 996391435 366009946 114864068 389757015 174451829 43138374 524992976 54053756 726791297 365770855 862993515 151212099 882072655 219666359 409223289 725686035 339338517 190829720 822802213 94906469 372394712 964167420 793042371 715655359 312085277 440909792 140690108 562256981 126797243 595456015 716434723 955978546 318754756 796637389 820733739 558573332 756772213 90766841 950896938 408139314 260913298 940298875 531242369 686958842 64683184 111671646 569982725 130286131 938829548 336752021 747131555 861033205 619345309 512204588 92050869 372890228 249148035 406855204 267306825 674395719 115142641 725645645 607333739 883770047 370261362 736123533 683263506 215082976 433741192 61373921 975915944 70503118 588282954 573561569 107052827 552595444 873866173 542895890 720342255 337591430 912660863 317080768 77499189 326809701 305289685 824525811 531693624 74082133 383936397 15074301 586563351 754226001 484479321 504734326 62135124 134943782 465948706 302077663 326042021 819893932 924240523 834283496 368928198 317012627 750872752 852959129 79660757 906720868 740111353 257582475 171883827 718385520 85731447 406435911 404146736 811007899 320049420 348352320 931892629 54310621 788305308 54800860 158763206 562449741 981497482 526330929 472165820 470051576 112349708 775384520 200480479 32080054 468290454 444738149 595347036 867743778 769386099 443694032 387048133 870414656 829943054 368925894 818378895 675778689 499212420 411842707 427202363 656495904 17737910 81651333 624596321 804060918 987540822 103598776 518814792 492073851 369132179 84863530 191982592 716837001 166943130 32500450 831783418 471072638 531033647 814617720 802974341 2309565 753134431 272075840 945966574 603822638 739583830 186818832 685262439 667500523 362642848 605105285 180169334 39097274 914346350 468353892 250725151 160450951 931109027 334224690 591373990 685132152 870902943 211452359 321451910 152308484 821280479 843649814 900290107 287260214 504982970 456037726 48250791 643378171 888317803 161346929 878220209 685416089 141411355 851123349 494760816 718224378 468152057 774328835 153061734 227860514 131650886 491622119 198176928 791989500 287363166 318113485 463049207 217583818 876484734 557572519 469907971 348443041 408397144 92374014 840779768 219053825 541001429 628228794 779589490 813126594 733327581 728565746 420482305 631949958 407910081 640229291 928582119 479198546 772681706 849228511 19920424 821977413 473111495 920512353 909253279 668111780 644068719 993666158 543378493 114583155 725334131 33411462 497998291 167948323 469393634 216543688 278720541 574403020 888093947 43749469 960892478 526771222 5408443 302919715 746580256 465874386 779426937 437099931 743941121 175315353 582696403 649742943 17317540 815916793 994920086 842966466 166388572 153647501 675119883 656214653 560527590 701204474 41822203 62218895 371603672 600384585 42024443 568398540 301817927 870686222 660617263 193612465 689468879 189141680 109474945 179166077 835919298 412810111 968524171 231271504 461492725 175201646 553643750 453831150 311070178 909393994 182519022 825036400 770378029 844283019 46204133 240029332 442335169 262820626 39257887 693653559 71920616 869917011 391382309 421879167 411964642 998982478 567878985 491247466 563258271 744424149 571686248 777139882 710951515 582119109 121598133 363603798 31373886 275916769 777784217 384898597 816582180 37776742 990275385 981972676 118235394 634602465 761141758 101881389 48131902 89659406 595264235 749554792 766487250 677541468 655546657 367351211 764002728 851031695 302258795 819285170 506472458 222158510 256856218 704617415 49406756 326260765 194939453 922209971 512574636 459112419 62227861 481253822 472506276 419198435 231261332 520807186 705002043 40429447 861296544 565879782 320826917 170751186 49091890 991677209 969702417 602042634 308818455 24565414 889140818 442779112 277271784 985110793 536431257 8851404 166354890 60532493 441968450 501177081 966768776 901116684 853512749 780717562 967890154 921321016 24061298 760600263 349918833 370761058 813896111 278659134 993873280 269118233 901218434 152638870 838224406 97130430 285536215 356574539 611253457 433069020 647993492 526262671 545502628 159338032 251358670 236002091 957574715 193854607 894487765 590410798 556335391 761369427 244542253 278327202 968960093 529264902 629635405 166470060 836828540 744799896 113353204 794269945 448569098 334175467 309752110 563321435 222210523 768878385 198148481 504458141 817716114 516640095 180115064 355468080 269909586 323826115 626653328 696309804 39487182 861117995 830713064 749002591 278895512 423648532 75762221 625890053 134723079 520025152 276348608 447860773 215652196 809736803 673468261 856250988 927875258 207190803 192172581 425687592 106490820 558493414 663524996 798567327 705453727 694835059 73618615 988451921 715551703 794233214 735673806 586071228 593093265 180997030 155058507 948453353 648532834 387105524 329468836 334828198 213915306 299321898 852387975 392534349 255544872 18462817 235571276 991338962 253257812 382823328 654232893 568930421 767857290 893747396 189201997 310216834 517887760 98708935 683759718 192452924 440605569 513988688 575119413 753798994 524468631 949403285 94785231 520605514 533027748 747199633 216101886 650899195 12832671 114678611 282132589 660955049 528586030 18406440 753914117 921495865 768732487 7149767 359374133 884145388 918977878 347843597 109974357 616226244 114975231 570771364 118889518 88287660 30412676 219208522 865054313 175088312 828250431 470396554 976409173 940478654 141512685 915609160 968677254 920303616 428113102 455978013 94858189 560019705 658787667 976222418 882734498 320687996 101532948 373805583 775567044 898148414 471581406 233603392 113209418 52169513 116586395 349989437 874457992 428602501 729998289 515088737 881651214 480923638 738991472 453321879 770247040 150060318 164883907 500659006 776562815 766836074 462665960 362042587 496498776 964914313 950610372 903449696 16528772 983444248 148701589 611401199 451188030 22792444 601694514 781451107 872413448 322114972 574108500 721583897 530165006 911708236 336203603 674407576 852634287 714768668 659644228 303406173 794095350 585330141 387564722 356431847 917104413 879738700 664576716 685471577 691403659 772883388 289334953 867651619 576680627 113570489 499771215 319370649 11322122 832160377 430176388 816399345 623146294 473890763 896849247 814904175 32167030 162685084 180735280 577831784 665238284 434568458 673481626 740521527 820063572 98620326 547266257 6712624 949135709 937523954 426727791 365124687 326897539 415894614 517370078 417436133 461261911 223525949 948617040 175539240 810011314 133898713 318117667 866002754 628605881 257933146 873622522 190061372 259154872 734834632 145503220 942948843 544365539 825157129 729302675 383585498 470385869 558149551 752377501 186410326 518568711 76482823 687127901 931663917 348557530 481130219 988900036 7244787 768165865 219591438 862558204 474666356 816391782 517968112 870140729 910765193 826130476 955147293 756763826 872112471 153923001 856136677 497265725 882629009 786711116 187626905 215174032 63784929 403824376 817874182 102044963 46105032 579947016 791420976 400388052 762934312 950767882 877789532 205121865 918094683 893623561 162732125 761912684 840101758 937658433 76906909 336055153 271902930 96668325 687596014 538911737 510964712 382979270 879818319 379628279 314753480 31968503 601763931 6921255 139846313 165721312 139601211 6994926 432400693 724970961 725844874 407064026 56853657 949888109 768528453 129838505 551403619 207442602 205546504 556027337 543870888 192876497 653068117 191764585 31033070 302011850 282988740 560824125 439137446 239739696 567838991 114595697 619974649 844191854 147674320 762487814 510882040 792459280 526726832 454841409 496679371 13727525 941016322 212130114 275485377 724340592 644938312 680590449 297560658 459112398 142369634 309925652 327780367 191357547 375088414 233687440 874111630 306515518 428378095 693868433 735891195 144317731 675864957 866900656 390961828 164794595 947257465 635160167 869312465 185219616 673451512 326104643 871409849 403579872 280350042 458807051 561751304 552036553 163676445 519140612 209900157 525088757 11933045 370303835 791508579 431012579 687427893 435045470 52298289 991146757 16729917 946949242 303544080 666134608 268602211 789880133 544314486 521861143 771585776 845153355 180466431 633292568 853245053 571203411 984663602 935533428 290593360 431826935 940348212 339843172 338694532 240814523 624616172 327605887 784687327 943958765 406889149 337280039 271519907 941373805 392731143 335678388 35113718 689290826 26130373 114827784 105476603 546031569 587718250 421714909 784425291 628037295 452483995 434208301 962722038 689417884 120494515 893925953 858960894 637020080 97432233 328746000 212265442 290890016 471029988 361460004 115339149 846001169 765410915 794040477 893122626 535461716 532810877 921399059 751793673 831129608 663126658 751539898 871225272 443807462 7253166 735948195 452338598 772831984 118385660 579234577 574909226 936159171 424332043 413597798 645741906 129041469 161607190 122500809 407813467 827157519 965959142 470247238 997069628 275269039 737040724 16529342 846662812 748628165 680375823 501237123 892424242 619893530 18960899 492922029 83734390 444683044 588636022 958337923 271943913 933481461 884848297 311642849 703178132 701761014 329514036 185370553 76005099 375552375 642409054 735424398 294922160 37445514 954009891 517444775 344021392 39885957 266607495 607015560 546201170 575156296 965769277 478568028 313412717 475815743 672174550 489247150 340443314 505852839 827307712 958051513 27077653 233251050 961407779 581744117 101166927 40247283 948995292 758398919 615436901 554557428 411546816 390250736 902059052 557593631 186156630 452572636 917525976 781269332 725991732 228170472 786499789 553776738 686812072 883138842 374679281 771089784 93027024 646501425 394320725 36896658 478072715 113172330 202771525 309355947 634037351 894215076 395404404 945150958 698937900 16268665 325667903 932172873 497779942 87067714 349107002 63993101 473965979 383035487 41706410 338669335 692228499 614033463 141407885 527583784 118237785 351645191 921091488 780290956 627062689 39073671 117504861 817479650 519979380 925971758 854045374 241311382 936976118 450821018 139323196 400528396 535248816 350723150 80674436 847929049 927240235 99372047 475028669 603811987 65902994 422410661 178289820 838063620 117271535 55981074 353870661 977730107 832039001 597444818 521347770 514866658 272805108 476551302 671105946 821545811 953843087 910297645 907294428 640731465 196794082 807625452 570419102 783278461 679968231 158812967 337956337 570080552 765821119 795693776 895299719 691481484 597474578 289091345 417044243 186497924 515160811 887399041 447899113 797019799 896111142 945621656 612239727 878134788 510575726 9819174 787715169 708785284 817586805 481682364 61190295 803454711 406566486 780767466 897532091 605489745 420029569 589012939 47347368 920292194 604154691 497074020 600176731 627131288 941820225 76210645 890307242 799334225 761098693 258750124 153781787 135510974 787369589 465195831 457111197 521816415 851768922 671091300 63202827 933630218 362599432 849546201 784057339 861541325 426074173 937439844 475874354 164024319 120591001 973043258 41301727 395930383 866237641 453136368 720507636 201697828 752829740 570514101 430253652 509518063 383681833 267901447 172628203 10391589 826530289 464167005 405915228 80374659 481920370 287330064 922758977 388151963 536161647 111866963 188084583 215888619 237338254 65935829 218152910 810749797 513053401 799120325 721821161 324012409 415417664 934446934 198685244 983406429 447027229 594596409 787003272 10991598 678247684 964045973 96010792 509003431 406393293 428886738 944497215 671585912 414759738 712110052 961326902 7496988 485655382 337173596 172948354 781117201 405279336 464567847 562508233 737716511 958304985 809957939 847875827 283159390 762932883 248108898 574559153 296900377 185881126 198906375 502539382 113962625 364596494 955390728 718168453 258849989 929505321 58602360 864891796 377661258 224140224 353402103 424203428 254283078 618486970 32826798 293910233 758911195 947751732 247052578 903080491 552314644 35362456 244457471 658873768 800971196 268072093 410422217 551259939 722114560 791645239 217674942 284993269 535720974 593949864 932351198 196886545 141115487 393166295 163623469 348918026 421281320 680138528 39434548 542859012 466261287 640980368 278157951 714342015 77710413 798071903 600670450 427232324 989369654 184643755 385705143 783940569 4889474 1367900 342125906 720820320 541864992 30623699 578823234 436817800 983219640 782583847 956569729 851327698 261488005 950388808 862669027 580180676 817413375 437019829 515379732 586603274 537399411 800620575 626402282 565719771 666857654 879931864 782203368 955618923 523354507 236385004 879077296 279331475 607164676 451659546 394279687 104492923 477543520 582719962 451234499 516303479 15759674 361478305 841318852 257831027 970778641 3824713 808282820 696389401 755570070 915660613 1667537 432321715 593776198 242605770 561114565 93390956 798579802 577468260 419367211 794084617 88171999 92732448 524797567 424419981 676542871 484290874 171181046 683801832 932634700 412097941 616077048 388237239 559797873 435486042 133067653 32723835 491258985 37869966 804677237 979782427 79376129 710921750 20124878 634358103 923849083 86650428 651698445 35214924 186823031 573897871 356924017 640412923 834693328 411791121 730325811 164621488 499022770 251829293 220193539 990543532 111926581 208653296 276140080 649530936 670479405 530069474 244243414 298138272 825699100 2789500 581834484 845422980 729862470 922150536 388443392 965604702 38461640 531373679 378557190 224491876 105123796 734649689 600046874 928904127 889822957 943038045 37631748 87963222 296440872 829961784 176509437 614163075 139214106 128094072 455963421 117375884 36258772 792304571 916997330 219094164 320953964 60305423 861338961 925524474 478667122 654715143 265837956 36294267 638249369 320803320 191313382 370561257 333810772 769262568 91864082 523544335 439837510 128532112 778004950 399160502 517213881 570877015 101919766 150596050 966996814 230561298 662671739 215184589 278256016 682718343 206684759 971070511 542313969 584324560 379327915 399596427 945649912 766699367 555720413 152114036 89754743 790769928 702399528 213177643 727736866 894888359 637064602 450941565 716577475 848577935 51253077 473566413 551192259 482152097 304259878 642258081 207010393 114863579 99532303 795078549 457585076 652093891 588294474 574529769 613231768 559327174 80564287 423716563 562323383 552427385 766679730 869705596 388190177 114484992 8657495 833086567 733932761 812571797 625961744 575357441 345549824 809481454 149892468 387635557 973781823 902805759 707656930 353267789 566988501 863696391 2846370 396880727 357450988 961427876 654700374 587500534 53376371 844470032 559974067 990612692 578266055 567691125 83604466 146388947 546185798 841643757 644031661 945848481 340187406 390621189 819663141 388715992 582233355 476503859 209664891 988336978 364678115 556256591 235471962 690225264 48081492 257250107 382773321 796869439 188923705 211003818 132056824 664763990 401413521 116588767 677576508 87170787 811387354 101345875 304113265 900254215 624648138 503056711 140692065 233430576 55288237 764481952 702843579 347043742 167702004 943260392 444246938 503505032 667026771 720768483 620176075 144862245 411933556 175741147 833182626 585132065 964758480 327433625 865875593 785561531 492399418 896055763 640324878 890859982 202719903 914130586 432005651 216969970 744292147 426421189 907284436 352625564 693754352 160483075 997894820 850909977 680370447 910371790 181437620 369877822 317516628 149870694 582362714 95002631 72740875 475417107 668533645 812376289 554870304 774989960 874273939 290231408 472733606 273289585 843824228 399652633 114259862 223388640 996647926 964348904 338730920 85148109 507847034 938306520 189067610 856352905 992461286 722746557 372968238 651629893 253737570 163220483 76693769 648023530 70684185 103955920 590827004 979147525 997693649 608676051 491373215 366008099 141278422 557667224 610394644 64574003 170767577 62967 165644539 446215012 875576963 33162210 836511278 16211236 911251941 956613573 947385756 542541684 678888913 774265136 550449413 318762889 901350757 998415563 509981820 469491822 247200418 562090099 973319445 916552767 65828952 473918515 870343473 137046075 134903362 802141651 447833812 658031078 919762493 195023239 117003373 826143511 506165751 255531575 86495591 951933845 14028596 929062811 223752193 830150287 202915753 928942678 889908058 775993589 973252986 251974331 239138094 500594483 790551029 376513771 753864023 187155897 106157705 810811143 116326929 928036777 145966529 22258195 759864986 369297658 802613693 894420233 627663850 549170144 565367610 362574435 398792072 571684997 634728890 167792632 41946628 921262057 522693024 405281232 633402993 345978464 760459444 242551894 403953567 712810085 195368073 283818711 820559837 669829731 164515268 837907846 732644249 839081045 725625908 787913237 316429161 143435605 286001237 944839896 414067274 471175227 661214955 817111669 720117202 875559270 989148590 682236125 378301547 630433514 452717462 869725465 20384930 475701896 831001859 232412295 317654543 716771185 837906114 13900461 234681514 539078754 973818797 173572671 156446007 546920721 532540306 240717703 172370240 414535745 449656429 150115653 672754484 898219099 982999859 166281764 219072206 149654359 389930256 982042812 643149664 968487007 372444806 339949241 863102911 439051308 126273095 576218215 69727742 305578101 877774018 546090681 390949046 828215067 769066287 467508156 663444452 167338366 423174695 317958068 692474785 182182778 714367022 118994727 101003024 428278102 283162180 5005483 366659505 3081841 314146897 407712687 864811348 372205401 84720944 684021211 898471548 770612608 552042189 316938835 661499385 201992454 199120333 524269994 250779778 888394721 121848974 71071092 822953271 312486456 607596027 663951249 539465133 189404423 970515576 700388633 48699118 553306190 9862850 921158832 647755275 657153889 892809083 15592734 419419052 190511136 996546659 766879718 548554347 801973251 480738654 955801829 234858587 452886125 59021112 446777752 729202004 734895950 556220251 822132922 2459269 502529458 28158230 351365752 985735022 246257464 228919140 612836843 371337409 127315531 896065412 509249073 377040786 546755144 570530462 277275148 109877775 529036366 59054560 402867135 727838049 457534368 425448604 260601682 109625622 713694473 239713836 808094152 487345938 522635961 96677045 518439813 1118166 349119466 479043619 470041271 98230702 920983233 514200591 228562171 347162019 265333935 434935970 439339499 571981735 977664063 433518929 912170549 802278245 606507741 36493195 992583957 842760041 486466419 664674100 991484401 536409738 184556208 98135814 726034883 587837874 255193750 975833492 181178519 693660996 773708081 691048401 833665848 790257932 313940448 937719937 781373723 916020140 225157032 150211012 649572005 640350144 310463827 989561340 642654575 89372496 543870429 613777934 422987279 271415935 688911419 81148189 630154285 534287691 315860774 104647080 657927269 871435172 913861520 129995439 480049404 471505929 987518998 470244554 308229123 367129417 171586203 676140555 919668893 265844460 61484448 600965522 571260944 409998624 960710166 396898177 518089301 599290610 947253963 205950009 867401655 752268184 795511536 997801554 371396609 231425805 321479297 561383350 445090832 895317337 779046610 481068384 374391619 548643181 175254363 4199246 108178163 917359410 418365477 128321862 127785569 250838437 515389776 471812622 678178742 877346987 160877894 171304644 230279341 865079096 214021642 980222168 140511425 139105424 990729153 899892996 822908583 654400494 671719589 580907757 337257999 683609543 435633782 430262856 605199076 826668693 875380388 605515975 202166219 938738778 640988896 680001525 973651214 659371804 903277341 639793288 306870285 15804042 159522356 507314081 42352119 272331648 549202363 145961196 918795880 29318671 433380833 136106564 875845258 779695343 513002737 148758004 490056029 578596137 931436051 382508166 566228030 896333734 579645377 754243702 85235911 739071737 895870518 72914883 651454997 547857756 755861964 974496591 15936703 555360555 449555074 142329396 518497720 674268115 109269261 866041655 498394838 6860048 88511352 434418769 705714002 320062935 285074828 363033291 339542490 124842346 561607884 823148253 650184904 981876294 631268060 192886068 635793100 6195610 941134560 241988142 572187721 201851583 165986380 93983849 743213303 83470587 339379211 877778391 345759646 879739071 267094869 372523079 224943892 710052012 401218654 321510949 41823339 283242636 854983918 400631387 900083899 382113927 959117756 544195058 982180880 939884826 528738559 227297044 250825067 256512268 344586911 117718677 933997558 375361399 942493388 469086118 216031421 691412469 145066003 988662965 884404417 673104223 970166266 657621344 307175498 739187231 173857187 636360440 340521069 650571666 263091579 784691247 453242084 388075954 994769277 707094530 491996846 201637980 635513565 703444393 521898177 935532644 215170750 916995837 805954432 99458408 929309498 216501276 146918483 694429993 897188926 656027894 596595427 65020891 967884175 336455447 953726941 817395752 894901150 491559107 59314159 441613594 964379717 847742995 256354288 735314511 242491949 87532954 316338490 462168043 934942114 496592981 79340598 712037901 291086671 918764546 551596886 193420096 829297475 524068307 207021816 51578476 652985183 728491129 686153450 38598747 120820827 626439387 156121593 711947957 943482178 745314738 123614501 516580582 899019105 500534839 438606507 781174881 879790603 3798923 362206704 553640062 204652382 460153495 32898835 841785238 38430359 832790366 360609248 48484731 406380241 413210119 8130601 822636633 752782347 434765086 269356096 723038107 641291182 371366230 570889426 114510799 123912350 252885755 761549530 518090612 238509374 623096479 211672421 649685155 420478687 247325079 18757385 186828083 655828397 159538447 735652064 688548129 425715092 443547867 946584546 685510146 886550845 210162699 108269878 693295318 262582963 518225488 990725555 183738892 231342926 420636827 722051553 496676775 507400039 700099271 895101868 472353493 450081196 235573452 415138194 310461378 486288285 297513828 383051630 170202373 339148834 775828980 192566610 420711099 409149866 193104874 102471302 383044007 910990750 847531936 95387282 47577692 838793542 400100866 478833703 69161357 739066544 49564748 51664625 315770569 570816287 533799953 682532206 671837111 563166556 535372412 305815940 750004144 429092223 954968913 574445529 681293750 86306293 785158818 878961816 294054102 178543633 854511776 635142503 298316250 185953733 572857914 234451018 193915568 79231792 582140147 21037779 577192652 797892713 547989546 17670572 5571455 26616508 278669173 193551063 453450545 562881063 143505636 752648118 731847537 741642987 781556342 667819533 422501642 640825288 936580516 704556787 21625721 537647232 721891223 626331620 868561846 172880034 823866740 167278098 550121108 923182359 602875832 407595054 419471999 422138544 230874351 427494621 132918851 769834859 424984699 817401421 975743539 27561500 42465435 145964686 103204072 806197535 620988312 599424621 890973812 348918629 739843029 591285228 295803846 110268750 833173356 212223766 983250027 131142402 574077271 469161517 946300257 31144297 792304698 230695775 183451489 7010615 602145299 414177955 75642111 127833340 261866388 932526581 177279129 723354042 791176558 627001423 456824490 137142136 528324683 301235632 600198182 220740217 438596004 302289307 638101901 774411949 953135627 484511111 390455404 690703352 437063337 850552341 322838193 638656393 326009360 25401052 591453133 875607544 841014647 705348318 889580327 209178666 467543377 365009406 976575878 762387535 431927895 310599970 615163439 746659397 400506793 601365836 537656014 920601727 7370089 85945111 468908885 989845144 532521265 492909013 959083415 324685819 968163279 294354338 322567601 654947072 181210558 677176522 395081211 304843127 873433778 858428032 378987072 434627794 994460776 683245417 31118347 188005338 675796212 842367808 927100263 317487419 413712387 847944248 976337534 696660217 2051273 332123672 89118466 997021680 427510100 824790593 895346665 532351223 707784451 913837802 623085870 930222928 276859349 895367117 559382216 131663121 705975002 777398092 884843558 868122137 697370952 157556757 14104056 254240052 92628359 433274781 362392577 182871514 38536183 605894255 58734461 338202275 796025724 590607297 419020279 608828445 41181355 1974660 57732060 96189606 209763436 15863133 865245218 461066561 679449203 909996624 200741162 815058537 612211695 691372122 856086032 125337689 640381970 611708825 141117866 37346948 88175784 464135871 454311184 199522777 996088017 1660473 263586548 486472278 166380014 126165128 237295586 165616780 157809064 185038270 845655125 389927307 462638162 586625632 887228347 198890619 194071310 771694941 216027102 774388686 562477307 592927124 699354795 507429924 261319326 26646339 360603148 481350501 81922668 670466541 779125311 795098005 632258383 522568633 892360397 615208239 203222829 802276640 443254431 451364407 469541068 442878703 576086843 1799307 875794234 871988297 300154724 598389230 443595645 803678717 664609702 763915014 427707197 824232675 677334568 69856704 631359136 626875573 478352329 169694363 664191573 942526869 257626437 396234375 764501798 964417126 717960693 152345919 380648748 278609102 861562815 246003275 124805184 65832344 158950284 873737958 109688336 500447188 877527461 333861243 782870289 87929146 195756758 48211709 226870701 309761473 229234228 633693175 32085667 647785804 299367201 139013302 989186856 628346046 537158287 636991304 7374646 339057821 668057196 147030840 877907281 451526694 903557499 928654514 907268803 132412190 102168398 750837621 365575636 621050953 718998907 813461441 972018362 916416460 228729029 596653834 602128584 884040577 132222738 392326775 443780727 949754836 929601816 188875201 248640743 478639571 500549282 268200472 14986919 177749099 500938519 280956455 438407890 166679680 743385405 475219196 328068446 86735513 944974714 863362775 687115484 15679467 490296506 3395040 684526327 238695966 313959289 287418728 535069066 233647706 999008378 71741451 876298942 283926449 856940795 697521526 461102701 707348579 866562672 282727100 399435973 793783897 797061385 261308162 311615086 276276019 417340201 706212484 349219526 183654451 519383088 576904163 445377636 105523482 151293361 723617617 526233498 466110725 61105962 345142176 548177778 203902950 630918143 975016718 66658921 991925462 259118775 57508948 903980620 726764584 737561583 599684904 5054974 866472288 505059875 566056427 292396827 856819557 718398300 758185451 410984824 468819481 245707697 882230348 299863762 973951405 427708705 432061674 576306765 333217266 126886576 979279989 832934598 949842506 457228134 294387645 191752405 551760105 582834762 143930216 309960050 835338584 487303075 787829260 207232879 509939034 789454635 650994234 747089171 669841445 658248985 384461998 988013630 751762965 101265134 948018553 769310941 295427424 185946933 261520804 715482027 568318373 882409660 260959001 950588350 404310383 563104079 444297600 147510941 129787886 7606668 700468142 13978391 73925958 226864994 537001156 53216302 210625705 200681109 317128446 803767679 888722067 679775124 825025532 172658781 171562554 387922343 984408301 314641337 625867582 316322324 820429899 532381194 166644163 142837107 773477221 818441346 6827693 788357859 129007232 204492848 866202215 526689504 114709585 343227355 69345816 784631391 629881679 902668007 885139457 111158172 521150032 902509802 71528580 335200554 90665135 403528582 210227968 185727394 887622674 239433856 776232189 687673673 488780623 876046872 35431255 779720459 80899060 267140423 739333191 93258000 477783599 275010670 10435495 289330681 816672365 154357366 556527131 706506432 330244375 185547893 282892246 175176982 38083463 811404859 51586238 659164004 515330281 865275646 301747742 977049170 733814181 649881930 244104933 195482167 807721738 465051677 276393231 231587092 995985945 26549177 870237211 937287820 981557479 896780810 621320053 765271056 924201466 202160647 746664402 732672398 413762344 152702071 319365055 35324710 485373543 360608717 39803233 202517982 37900536 56125205 258676124 760540019 459915117 200185020 308734372 972371676 697401330 45010140 911319062 544423516 319808704 950241587 720116215 329142200 453521349 279643705 266486869 141840374 127302180 443031583 776070634 629616918 156459811 372729285 752423438 509849991 19150699 162907019 970577589 561560910 437984872 110064613 512655265 155448723 410271410 785514877 642717766 83239635 961608436 995240746 198960343 568021594 536374839 174862779 337343558 337017156 515524613 760300058 902130853 581231856 691062977 686602036 124650274 775767596 407608134 645030746 170000800 679088909 2955938 143518990 746180352 379648346 968051287 915636123 997738965 511279514 716941871 555002688 781430339 701286699 312131997 841467604 958104207 200240301 648589104 34403331 479035181 405488836 28496487 976478049 991515766 497613268 503859288 589113087 919658784 103582060 373223023 577698937 806637770 152474009 806600290 967047651 847233251 664746028 366258109 976277790 246840185 226767482 658709745 348812510 802452344 796531131 994557598 50676127 655592214 669168406 934609316 181720851 278951121 729313662 494812774 189975494 262575771 84440169 242663417 397993546 84335407 672647645 555062423 687082677 506995675 370220078 978585994 962652763 938398247 77846042 960798874 771507520 249964727 900727527 82776187 289580112 576672801 659402941 41083548 222673487 208624660 957411928 744007560 955229020 526196835 541886382 504601682 457155087 269514886 74612587 794807514 257771589 599584225 678619733 9638973 459184582 978696105 641187683 706184841 385920365 168841140 812524155 330266352 990722325 548715587 635919556 477438382 546036482 227479747 59271466 197947946 309830309 925483801 599279398 80215690 302929370 843564621 431001614 385708938 777859032 298337627 331922113 721755765 566531690 437977643 984558549 315990615 79930445 100053490 971216624 616712219 315474304 100454131 863243922 346507149 737803489 814265297 973140719 490156862 529256892 283977112 222161483 67829337 815739074 830870264 750919526 357857160 792307598 322331508 599996537 947488021 639251593 190015729 162340447 209946757 359198918 657615978 114696617 654429764 386056456 309627728 453704869 941312835 954536686 113972659 770139751 895582549 103597382 888604722 764568158 518926398 765902576 813342742 700712371 461513682 699627347 408111938 394175783 145440653 677077615 189249580 998228473 141672237 949970975 677112420 381470755 257128776 313778762 691776014 331958309 832611085 958596514 517311496 703473794 715378243 853467 228953757 927753283 265541780 628366388 147648461 250598778 826987352 714150783 762501928 849994546 752229606 697876366 97864636 25978179 486245486 250725478 904015718 575244095 463384674 406838677 521019247 204975295 790972617 908524583 939182939 262075766 277054473 65538717 657729588 531743856 652766683 437638110 331949632 351571250 420374062 857613604 457930581 40788160 792366364 544411466 415772945 776176623 697454262 944636544 379849138 674811152 324995035 803386694 393267853 790993090 152589626 149090753 56644928 888530693 668810364 679499155 804857446 921720218 928197170 720285774 102189077 720239379 514846035 88116054 491800239 883105451 733548283 159420828 752230644 627427865 76407964 515905415 547731447 85130512 441194766 418772385 127292203 294687478 327596801 7985582 10960316 906369161 54188862 51225021 48347251 475237921 477139191 131437780 654607954 101183 829329299 947893788 293837913 686743071 524092600 905802597 7435155 778235438 125478942 880311827 653081735 886313216 941665922 308523773 32320854 129498421 177741588 545823673 483134769 179360024 247555343 452092725 176997468 753966946 384425928 943866781 565914477 873873408 108730200 816583465 771775017 309720989 422837231 819652317 522936503 450161258 100340756 730528245 401938636 798525499 675927480 978866751 360575213 686726393 621320606 22186536 759641572 168023402 939397003 714088258 431096615 71400892 796425961 990040046 475372549 242121666 152069367 533032991 399927854 892885423 38877462 565518140 497694844 20144096 824418829 325136135 702918745 478573101 571792168 697680400 95747840 600609271 857841791 327250028 100854539 483268317 505667744 259852954 607800177 156332098 699073515 472366823 163444370 744642475 348054328 377269800 693955178 936956244 586697572 933155589 434662181 748585850 987814922 561308908 321081506 746702309 154796720 932009053 953098218 546300845 654476819 370188495 807460422 761209404 214252246 739945055 385359614 263615006 96778471 998881795 933045596 189577192 83048053 778174888 959991373 4027008 627149955 761328516 344242875 600763529 674345257 183442163 798798350 936140844 524421289 385428031 292800634 659079631 197404453 231534309 52156673 607989572 535364930 349160495 482202634 847535661 490896529 415099854 736172120 180107547 373563311 988818320 517080695 354152041 546931984 454933446 150910694 697183343 911528770 34815634 589498967 282921701 487331600 713314927 37975671 753641530 876162281 658901914 895684383 442928298 845676466 942501097 774627874 746840182 773019775 53808233 960849741 174697184 591116405 470593108 380826131 111038125 994144488 108699014 613270919 371942219 16015162 357591065 994491550 603931776 607178022 946909358 324025222 913036143 398961880 822337360 925704741 138675444 699396089 744066166 343593313 209817131 875771707 7740215 501851095 277442129 496618676 700954193 180338899 911558 985212623 542177871 722792335 574185901 113504579 499167700 402870930 750851695 658189067 195050184 23267885 310538037 130161001 469743528 335059017 105788718 633411484 334717048 806265025 45518770 810494588 165539830 447220283 53621441 423216601 636415430 928854043 551503342 787906359 776827618 264077978 422952140 342779254 554543836 782741575 128378655 865630939 252388035 810682282 299282079 640664633 317962941 353490217 268008796 328833149 446667677 988911983 178359274 495673574 442789837 240749959 88269184 57827320 125633672 806320233 989302228 914569291 680914290 341593888 439334024 322511813 36208042 691089104 383163890 407076643 113690887 381237237 4461503 164292228 415714661 954783002 636309538 65873115 776090038 228628173 535319238 463045775 310974191 727860368 229456316 655881021 904854404 490449186 523084923 486696221 278552206 753182815 681725210 634086441 736306733 125597318 278838461 947084139 983300804 981029595 509590258 344140322 767120674 461420478 401510943 620497618 766970019 874616581 618743364 545428155 912967738 30297877 804982130 670449708 970469238 719748891 533699371 911744976 183894773 561533242 907694033 655310680 401938572 818822638 75835795 531898274 143569600 807398447 856777564 191765111 454535672 382693844 255714392 110148428 388561245 751156081 255807298 697693213 228444226 87476395 237535548 511595077 642811847 605486860 899393928 503917235 643607005 389940879 175003938 95097110 301274207 591816881 962235402 448972036 576805329 355980967 874573809 434943253 425078158 885116730 199900777 314790678 100706952 827336862 810570960 863021014 187500108 127600704 347343765 892873791 752453799 994459900 71578141 80950225 553708458 462520702 592849350 921468559 804847035 572279259 897320128 84757535 646396319 860478404 63163520 970370101 279023322 479527482 865120332 579211824 491647194 13973743 748200836 453665810 213123022 903159701 880847423 568092801 919313028 344731009 205552928 247800109 313361680 465712698 171232925 542202026 399784831 773092734 641972663 188987269 809931608 249175838 202331635 212961104 262484228 451809906 778244352 853672178 276838940 845325180 524997838 996356156 773354939 245839335 443980494 783464956 173236007 316126858 152428935 247221792 917692690 379946034 958557562 536756656 223464915 10725501 868489587 170465767 7513313 91350751 698340965 367961174 987272920 857913407 554877480 651549213 101503551 298867040 121619637 811716092 994752566 247355572 809151902 210959114 794518571 112270121 286476524 142266900 749718569 964344908 787818617 306551806 422082034 94281174 869553313 816620846 177095690 169650424 311730212 331219046 310040438 478129399 560407505 80638484 543247785 671745031 552873476 432421696 147081140 682351475 708712995 723743232 911377417 483694363 758095758 115802781 908673652 205443930 764106568 262522653 977324988 887688330 338502793 839162387 525875111 805728648 700569027 31876633 26375485 372188788 383284433 864603288 18891174 386757373 529385649 231537639 458640038 18688284 241671406 713212538 634657713 335541535 248225979 496552633 927676651 740116896 981156201 747652409 704753876 427761769 836431560 361207357 9296451 675350586 277034924 944075877 13448333 785398659 756338615 713401893 530399808 602438722 784604746 626633530 160345764 512034094 562650596 471862151 755760129 234266810 294613584 327176329 193194433 132949439 594256912 547148574 354709572 949552446 309096350 29679400 158728171 543904302 158468113 830131712 181022593 170146127 63489486 825947092 941316593 723871065 494252327 451026622 370642895 59980998 6540372 862669229 569508282 404362265 72185802 375776721 839742061 468607085 33377180 428910934 556806487 157681674 400360707 766056334 379824048 601354693 57453690 855840875 827749821 645741281 400187913 647584446 109302048 945776760 854979541 794687054 970725360 976226738 670885596 661209421 594178018 975355733 119977750 809017332 634507083 52653054 201859225 379834532 837623357 287231389 130171511 185543966 980146209 163166789 19511219 424797893 942875773 89323232 264401885 278868883 267171510 718648139 138825446 491198047 823265871 245971690 623937288 662377445 482127359 724273510 338090988 710435878 658851716 231130786 166376407 266272319 585165267 35785231 786975177 379949478 197877754 936454153 170835857 301958142 332724156 119492418 992880354 423141733 175978002 638432711 137581261 352812125 608076332 751759630 431442802 409306697 487489154 100871887 970496679 854228559 888638305 599418530 488999727 576163125 931800718 415445395 632704165 731872006 526055001 397486572 673173082 252315832 807090755 224674987 318130854 421739825 363706182 854552948 232466213 907059442 971096588 236463155 407617951 643317998 923283936 238301725 910166257 557720263 642339530 206463002 431654409 761513478 68866445 447216730 693651215 436649173 779604846 930334907 883072073 966844299 222765239 530919664 562567466 324675883 302850940 325830091 660791709 60155304 929628206 294237433 258574261 852773503 802308419 827487987 261643342 473546593 407549430 490086235 628711703 93480453 920655270 783998810 186049017 446152461 728466464 432161866 941918505 944769655 805112827 713090079 466947385 881052079 792370194 835939126 601373899 351979369 809133812 674593699 224455177 212632035 806097765 211608719 190013276 494429804 226058952 56635939 82903045 759074152 418321591 226957942 797163174 677748304 927079086 106487957 11991760 504115929 761279745 674308678 335920931 234966107 560586311 634776546 321002376 626385523 499273957 833519332 832127780 166820912 263206899 273303472 906230110 205956866 265822232 525777798 126849207 230831389 403601070 578771266 76439735 18069553 221718646 35390562 809031855 232299595 242382180 748345773 544216733 297967071 375706939 575200523 980411860 854240363 842279662 109383184 738843956 91110045 891876708 912240843 567140061 378629172 531007330 248446450 194981035 352674476 708460199 991199816 439477862 925878474 285165856 920594855 817938444 125371015 938407069 536356501 270672843 870708326 104315931 74216390 828216452 222190899 566141684 465705791 454658082 57635422 921387326 561169809 412931016 509577036 190087976 810522069 979185174 929423964 606922569 908280729 486864941 427224187 802725231 882140694 945982184 594330894 993582471 304763825 251035391 870611727 25358891 716630736 452938217 624214771 201396318 399191127 95147641 397334802 31581956 617826243 262763616 832034437 770298018 930162533 725204504 716125256 269868462 708723421 829116304 463709181 254840500 981246536 475628735 109779712 137200295 488709485 290301099 380655084 255978638 749753145 549138512 821637152 912097519 627891282 30260886 59945339 820842142 161768777 461872437 234537811 732904580 488073857 171962189 462834156 922200433 271245492 415167563 321846133 517456869 982628260 591313861 357885796 664040035 353686081 499299963 10842343 40165886 824099738 392424311 889534229 958102081 261896453 369547137 400338231 884861857 875560937 844468817 853572290 384623264 885233264 247479318 973133607 274816244 419483880 893283283 9973686 459935344 12057014 428357777 519868957 819665075 30815490 796076799 179051472 881982304 745477079 532442477 414171473 588057532 301068605 342372327 983239503 931130700 7048735 600039279 609091137 413060551 395610288 24240497 261421318 872231729 967783581 216102481 555353085 136722424 889506587 110690612 109370297 505776874 584976029 762343883 913497941 811829324 666481632 336002160 228379054 403804188 283385640 827147861 663827225 469801284 598209762 387435462 479128858 955003478 346536105 272025242 258958760 599910592 411867666 988195560 956403225 903554016 503701218 984358319 103227262 278046879 970973123 6466022 448006244 794624750 676488440 216655220 833073983 865279065 96440752 404478320 725361027 256987719 637573082 986141337 258318687 252810310 746175649 356818002 95062930 172309580 167106928 55583063 310181613 714718305 385290289 500782157 155104849 498305542 775449415 627750736 558011841 912136931 911643979 560296684 917640707 392137451 359412968 797373631 678565563 353042527 250508793 176757575 384707908 348001992 942506260 191508536 209225788 825498500 606950651 94509237 271984858 838800080 178126263 459529412 93649489 123114009 259672153 576927414 36469414 532526428 777680250 35292729 6217360 973306772 953934173 271877 321493690 541334552 660905168 608125150 117045941 514592910 36023064 178587931 519622732 348217116 681465062 57855192 97063561 230113990 59131972 171452283 260443261 980947431 210074571 245593545 645691027 64171876 272873076 208568946 657777837 35431093 338369069 751891643 967860904 88469611 490596759 547697327 784002622 947415200 207960364 613023734 476454895 935162506 865562701 499010251 561187786 587993235 57666891 733975485 13786961 582484401 791078414 517490526 469676622 155061282 5620094 48570961 189882503 170966988 513364751 396673294 325480163 445353392 430000908 597049461 362461333 547549936 386451614 658209350 826856591 514326735 804332233 400669644 412178919 133886808 238625353 459855041 970242145 118691715 170302034 356335853 194862222 594631261 975644248 894470629 430329981 206879767 111398227 462498356 15207087 584441826 876111831 6718850 557651706 785605064 409323255 579370160 156311970 2047832 710214022 416669143 454392944 551457176 562168713 598588927 612339010 716345532 830446158 308194871 41381097 374245434 361264179 193340953 773888992 685061322 960463488 658045019 689467380 636245527 948494362 192724482 961625534 251804880 912655546 794308684 377053436 261369899 966096229 307636899 891241424 19303668 474018050 160855299 570226556 585622460 331497365 970365727 623805331 721888299 989585951 554755924 262405150 382447354 878530322 307509226 955573926 32842535 284336660 692893011 36473052 989101145 199066241 31494339 577436011 120829181 857909800 553190478 464069784 89882882 617149355 325362173 588047547 563787207 32803618 967868912 933245537 188919895 991869499 309909267 942466283 569121902 173014604 251714345 551173142 260933562 430468898 170806578 140677114 359323628 162817078 457795461 252021496 599207974 477106586 15981 79976025 433774869 539886290 427215637 559241363 232491724 647272943 434535031 445373098 988421155 830373877 590100437 237414288 356611971 634251606 147548009 147584996 583798011 161413524 40164092 702476816 599725238 742223689 568343973 343833569 902304853 208115896 408579785 691199939 615875890 205495458 71795011 279447696 59240706 245922740 107800624 923717400 713384863 610469287 878140382 713412562 836363520 671949261 77577005 655270570 400079183 576535566 328821827 352543301 451754919 366736401 720387753 10345322 943162704 962147401 169281972 64335755 100027353 142466703 674025443 469503841 480166950 57051200 111820261 195688244 986113694 312815392 553847701 600524585 445875893 54313921 188584767 715440743 921359503 725541334 627255875 870963692 71284684 508469663 811513675 73778661 310440819 163232237 736147514 244162057 433879267 69255701 680595797 829838706 474297961 455119849 141584294 867604419 353197856 17936511 244620977 3758837 861868373 425177813 583022044 451835654 561825787 599179250 245991864 593702725 309907417 551326897 516708363 848220481 387430415 992823626 406363973 198310032 588491481 298971234 753961656 635374143 764868467 653847191 35616258 4577546 967778913 726785128 489411662 749708094 617771864 204126516 963164013 820061722 294365264 721954581 18674016 298248164 267210445 592536670 762097439 284000463 845924403 767762819 589430552 825236080 826866800 768681696 50456874 784832808 997039725 591553790 889856400 389325394 753747559 316948005 789532060 804772087 351314509 280448840 787931255 12689961 301954973 608336337 72187010 533467683 856752433 974574478 74355136 332134387 451395605 918598686 195157246 411655216 499167344 529622965 922927607 769544737 595641622 910634885 78057798 893265623 401429494 280350799 711539930 649779205 412628877 605995616 247270941 155940145 374780027 521909857 167879446 766595062 222225284 953211014 392527033 185038045 584531994 488999895 542730581 852727354 875384135 890581856 639554317 935143975 377071440 76806268 962472080 656494729 343739009 241058900 314626695 521587833 84714870 752406654 754284803 646910082 89479640 432047970 695160761 901736274 342490209 874489988 539236408 587104924 895659200 186660382 786257337 83514375 715032951 146159967 12192834 791755101 850013633 889402349 197536070 834356069 107943511 940522551 189218979 953478848 628881639 116415534 976912944 96921292 209841142 498977619 406573430 73773402 675259818 128019938 582707027 891487374 138491808 440387363 197719794 816444351 164621924 905881036 377346558 241393522 182334393 340840971 987352360 301590392 723827336 751108691 575769588 134894717 106709752 247666537 123443428 308837230 37840017 815480912 388366868 711359685 475080476 330624182 134754523 194701663 885514895 977838889 724501361 836709634 807722353 475867615 597959382 107228124 844670251 104378611 282746133 337027253 518493699 552715319 838713437 701447626 951206697 473915297 292785548 293982605 56190293 845282309 986208537 712578782 504421238 636407780 582042804 588781384 194960201 653876953 932159264 33580939 138024756 346265180 151803006 298019379 930091948 348258897 863761684 666344369 275345868 948105684 540387302 489406771 995229520 811846974 228438486 267767136 412025147 934609791 524606679 550764407 635516474 269866323 222156304 502549011 352482306 482714344 246833549 992762735 278027098 940808919 523561181 6301318 725852110 78878434 20018261 828519579 546802390 979887005 529904139 339853033 102445355 664867339 918136630 786199055 139208601 408001005 846697698 754704920 998154532 978727350 137141902 500843657 613234251 1743206 796796323 840102449 405157804 45299595 690189761 911289255 938040131 470503314 39182399 939604481 527728509 959133651 227534944 107089514 698093421 895243935 550102407 568038321 33058785 660339680 762739630 658658899 805801321 879979590 251002158 86488606 136936974 175723545 274474360 63413159 847254110 801088131 641277823 68851222 518570524 975082317 199192422 896904649 394028046 603846580 922122799 12903524 816254088 370924445 987544552 555439017 431676817 174498444 153373534 230752903 872980139 763558290 918617466 712900010 77921412 162700500 641666383 895941364 619758673 23455909 220036305 705258624 516637814 471657225 183309291 379898357 809786304 262246592 96499580 235029667 383789167 226687774 346529881 826818253 243968093 480416349 532520978 343648856 523319038 790074805 626972223 136271638 76474801 401732772 836761832 588358613 463299832 890124415 107589960 613176248 526906465 213827386 624289385 432200750 131618350 130602231 974794396 579660876 958742912 445094757 428583207 586620069 422142704 324240128 248828629 185658222 222564175 225361141 692891956 336928219 6123341 242978578 839176282 168225499 52445808 618751651 352282292 631271537 776981033 17779102 385989347 6422 754761223 81610754 268197602 114423396 587069644 352511986 93757191 128008174 117653069 678367721 874578757 294641036 521097613 107943803 125954847 877413315 596766426 143230122 144643541 27069054 195492857 896144929 62944079 672780382 560496974 807732247 937700713 859738171 67971565 738957944 474817177 461292142 345899920 310581883 654302435 857548558 455252639 436204122 955620337 680474004 825910817 363872157 661145765 476277973 904864736 883121566 555771421 622155314 285077996 139651266 899816069 838516796 754736100 17834716 867093721 810295819 166576782 131100191 512284128 691281792 234599200 616887139 962109759 126969567 194050416 268345726 262098300 360895268 100816378 25808067 637957813 591804230 276611499 448123116 129813872 361113406 66425606 334099347 40588435 837465668 696284207 146856666 826388009 558451748 288044332 654152965 710109679 491161288 635661172 641572940 213615523 884399197 315757611 375178511 255013576 235681537 359247798 881213224 934780149 863473710 226182101 228319625 807290956 22547426 539256607 952884859 183209563 250632850 541447047 976776356 295356311 995068996 250916814 781531522 475492330 180149417 435333671 699625827 58289000 296578265 664461378 211884765 923183632 351495558 435598008 543080242 145685100 641813307 556867521 809658672 38365378 232926069 573563375 559074493 106290788 263105726 876231820 482690419 168341815 176901481 559588544 381422779 370160874 538005665 917469861 646686429 970709851 266406110 218592519 806454940 259833335 942658148 56124039 468495535 83214577 812772822 757929944 746315049 72218885 233949946 520746488 451068072 775838450 40625960 545370230 726903266 156891475 476266905 2353831 573337385 2530154 906378511 552006363 862698898 821420796 907033725 858152650 385466722 964763394 68082998 172503246 822336054 708909864 453195680 585894137 409870262 164264601 854314398 284224600 557394108 277832926 450314865 892015831 123960949 834488976 547962033 508504946 877122366 369069003 669408213 334627820 185178247 975515420 326725805 321101164 210881041 454287591 407855230 887400072 916993552 609699585 322928257 130553190 654553927 239268055 694267054 210838223 460235051 648934127 458533464 276570072 84238798 584922882 580015911 167149182 226348272 600949553 85565261 207004453 679913546 204374235 758966297 234043799 725246482 230762381 840261928 952864732 107840796 52426907 688712007 701451080 326618651 390582543 83510810 439525695 134481038 76313149 775982346 941152796 97093289 386784116 487816309 690801707 244504637 816298404 22931858 561406033 227659893 352092582 819356063 713207314 71116643 813045334 447962230 612155479 360431030 79304157 671640945 683928108 212615493 427244433 274771000 654502125 587349576 598089594 886792519 686468359 97129918 699390495 259419801 635691322 827714788 731979121 512354883 677312343 274200031 589978382 205654513 245587828 527162334 119272594 942688863 383707001 40323207 77253838 696195596 764690474 834826227 738859176 318669151 956156367 75048294 538724506 441858169 587257415 192248333 687743681 823682665 115717286 159064243 648260794 825706944 860438935 89156629 122304479 340783913 441983770 307977617 180256683 834935628 945622807 213939154 15583541 827299412 337592089 693549629 546670831 888542601 510835838 274783968 576538186 617412209 162928770 671316065 576055403 525051760 601774420 108478819 322327601 344949684 344753391 215350985 155885504 17310544 718174931 410221621 722551506 822442680 142726809 178922715 861987190 109689553 497695557 948289298 158928065 530491149 904653620 372056989 759082283 731124067 612142170 460492527 458079077 610738306 139922093 735805761 782629093 534075860 672491774 523871692 510091460 422457905 946836493 34275816 506713322 466804836 805353409 622695238 38310231 959757936 709270013 76256349 482940591 123474886 644018756 401101588 860956227 434743051 685985877 105157940 388715879 397151354 377944788 388013222 838884528 44570679 664406970 887591547 781681959 9225212 117194856 637194124 597417265 235180585 827176646 411682501 3745506 76972372 173097295 926829174 155499771 69023577 388394280 125233442 461797072 11624465 14939586 662813539 613265084 465467858 195511133 458933204 398195631 34131732 103930087 328829952 16517417 901707524 186770952 752804849 822049965 87308352 968305328 766290301 638279242 276202877 615452798 984536134 964775901 708217548 831171764 220161683 852481411 596445646 358499247 540837727 433405611 642008395 770483284 915632737 974894359 314834389 979941908 953032670 317119880 678091683 612116020 850686556 832265209 374678307 154241172 13564445 892583373 803480624 138266304 799560291 467597978 732857205 561068405 320327428 491113741 196409223 462772802 212437946 331894911 794993874 979662115 134704369 149106376 859268174 557542419 215823192 963340228 187933083 664610489 166130836 734763260 985045417 203396815 38570933 429677973 431779472 247622264 402211376 621587857 931155731 641040292 899491399 679473718 986768373 974251700 837980073 975629816 969608110 131680803 999087622 236191817 860383046 986321114 395152900 294182897 939645438 489998158 396679484 204669043 74200233 667124284 49523721 788862627 626582892 399106365 203759456 898971285 92223790 739829849 103790454 573231726 266128706 959423733 565891751 299876649 309335343 841637358 38457274 802308522 169953104 506045263 187848557 736792834 249103000 720963165 700504939 337152766 880880349 568609348 550631584 600628277 20333565 332613380 482814208 275655004 245142824 66312664 982001302 944189206 960193194 120229623 392154425 42088371 751700621 206466288 460564959 561662862 711411285 628645619 283660831 303903235 543574243 32222377 557485614 919344395 571165392 768080111 580512651 431891684 173894718 348528259 696074913 222817626 93023622 571485337 783686670 531022363 513677452 71886895 946936746 850269188 779871898 634821704 7832392 144674151 836101554 532874735 756648953 109712149 692563918 11686549 741537463 4416774 328388515 340176451 824574398 761650769 748737456 177370568 556537408 537435389 240191353 69021344 80934535 879686878 662970925 709127363 465935237 952191951 777037078 521200119 411579715 312787903 88815742 616217218 132165002 19619238 204951454 177908305 556544309 617484674 753821723 549062256 54577995 480949298 85428628 554996225 554631619 62656220 257920607 352433685 545608822 58147268 813571495 320857350 375263300 194961553 605757577 774590292 165970060 502325249 118536677 361930614 215428470 662780748 468002314 590802271 764315 562827489 126852599 216544880 398855035 308348578 203662997 526035921 542527377 757266566 985248104 82367212 954492464 232695745 130928762 597290612 593005708 237452893 566548280 876554925 900834074 304230808 473230802 730125986 315429553 285265545 448459860 288885841 875290044 529159934 838380258 82515147 316055862 627770113 236746169 136243 728796453 808431293 381917037 92634293 174141729 975078852 105431085 376422870 330808064 195521356 910213501 606601638 653107055 73656808 434192953 59111107 308291261 233081611 765879896 657281275 619308471 189796750 185425477 764833264 429896015 155470178 874433355 276306350 698045989 343915459 924459016 764352193 572074532 888526094 45420376 919274895 535109438 270092389 812391426 839681831 357450015 852876373 13723046 558103106 903972092 765384254 253137923 318552667 385481007 43433170 134972443 204802642 125954262 645891245 921014818 763710172 43664642 89631459 692128665 494089350 262748187 838941043 901808475 303309966 112139359 734959758 588281143 128937566 635312546 192996449 977718394 44692282 693153403 942068102 474718004 861645088 793136160 426214898 346057641 541530385 623335936 167189107 840695519 915964682 682203781 712869196 800020904 194804604 973648374 727844389 830697815 19239941 403999618 821936318 128405933 923716324 6855888 238560811 823343097 287831505 321761348 289702384 910900146 749787677 108522015 941325962 533215329 245429499 575812140 771056641 121305955 268871994 222672053 517362026 538913231 806829537 623783242 777006974 689493072 639257365 351578489 600645390 458073304 34445904 170910724 399240373 201451498 660115795 70900531 907212717 398421702 497738445 209978905 31526690 972878006 948619085 798161709 296432390 266085615 868995121 991934670 93837895 724167041 617158255 634608085 867308961 467020653 619213796 855960951 976200713 802912870 178876391 354445467 457794024 849057674 252988598 513078649 711468706 101631157 322513760 926495236 680672801 356835324 992751967 14407989 751772118 568214515 474350341 974669690 165379467 314122489 450052861 570470167 404730675 661442941 496643793 400926823 997357353 843431155 873187512 430745828 92951095 359722088 583928441 691241279 388456495 39914678 169706258 594604141 806051501 620381698 289875175 724077422 472042227 734275570 706876792 643311008 752001193 410368640 449179767 987772163 881588273 387533354 209215916 402746344 911535594 941638710 951233872 927921314 244192422 429596897 236576720 586480585 457701776 937076173 817101800 351184831 269638872 917164246 128442257 653563352 86882456 639290657 547086499 59729032 500410047 638158226 52546798 15810436 193813383 870472246 75068761 445192564 419826863 22878162 965419573 490303716 733361403 539869048 941394275 187792661 75091365 771109557 629962180 533242573 187216910 235955731 965988593 774469735 167685663 582080962 134727755 41923149 89664635 570052558 457262816 542702913 477694637 835322137 877540487 199114251 456904941 260858789 708229778 714885244 256905156 197476866 81790671 452731446 278350949 73920692 553006875 572792619 138745158 611522707 901540223 772852948 506769436 550440130 768633074 833606418 5936443 164781624 282598015 839797053 526963146 272911323 228625601 414449156 455483459 398427853 510432055 210840088 362603418 120504726 43362046 163974079 884262444 477548557 474971355 846068409 76557216 559986756 718910749 421448336 239926912 188825507 527431844 552499131 294994892 618446193 17997921 86135276 414489224 70191448 433585106 17973943 667980664 873027683 180354515 659804378 425628168 801786577 949968206 540297658 666129177 522523638 230192857 660795577 986037920 135414328 246188623 945424074 957044185 515150764 928795901 282758046 905241816 16478452 265238730 957062592 343607583 625920298 782977333 224188731 502647118 852464282 494414843 222684379 257896563 573119797 373228288 631233577 217969296 673066198 655494065 160695105 949675510 290659387 366000583 226608714 806694817 66377386 590017206 97239469 322255693 621034036 874096429 445549337 912597100 960296870 44555766 44533191 146856215 385641626 435508902 542855738 809575122 294598923 312090497 743178355 315077868 814683818 694740403 969967166 232041196 3751514 705408939 843680878 803982501 500058837 201041105 952252992 712373408 677565474 896161125 381898963 45897003 503447467 556041837 893892194 455034406 275758122 733468453 138186674 122788053 781981943 501848812 993991516 186356355 513383173 925562792 236668486 57017080 480691258 679462278 571736290 709511005 290341462 881336375 993729982 370422988 965475163 147283741 803560434 733991438 756929077 671483949 893046426 607563816 528569721 51358135 760729256 146772810 900560268 240141287 508394607 446029741 219257567 854372287 471253430 938080365 162064314 122012077 954060435 329320375 790381441 642575486 898278059 122597893 202901642 710740219 696796783 800629263 882394119 675014041 197009911 948007909 253683011 939221314 331849491 824779193 787749782 652806551 978306694 42006812 202590856 154887236 22711374 724480235 723239194 814792966 274958318 264815130 766307105 349454212 105727318 14386506 50007317 111587236 994301322 34472841 133447334 142424727 597607910 201586444 214361119 706184376 818474172 517545431 726376439 312665774 517715653 503644601 966094959 739943929 519700554 626161025 150326502 793652947 205557760 328821734 6512425 142836208 460942225 936409266 586529431 353029477 488519695 895811831 999515093 246904669 621320932 610164278 866117153 604913448 577299880 555600819 760825670 590125334 147278971 111870728 203856451 705165644 606195167 860462104 395047770 268343369 661350396 467635747 697513732 892554782 968502592 314103350 214552486 285074772 826938309 37902770 345564963 359652541 587110824 367549846 22511508 477253690 39823809 646557955 149366016 586427788 880965566 645684614 993206336 487595327 469734484 779984975 49396798 577668557 586437757 729796613 526960057 251426404 692182779 530922452 701226525 541874418 832840119 950262895 647768142 877422525 668169983 109201978 168092891 772041718 671098121 268175350 557039858 975249406 165105649 561699278 175235033 339588238 442662519 13320961 485315930 946160975 575504081 404745665 450556551 821833132 775387121 284364222 306617899 521856318 172695171 107853976 253869230 864176459 934327688 612007393 665926451 266207419 345531178 701990050 472016227 237286792 436767478 812853784 849362906 68114938 837243110 680796648 370417985 872533079 313587934 302395817 978148172 76971114 725612410 431754874 276713965 475175140 252941664 349573167 160120135 49547347 444001748 583732964 591482916 662763349 890682139 888713021 288295379 539745511 321147930 634959763 41737986 470474168 664182139 104765049 268154192 789308833 23445403 785850226 704092390 552373937 261075197 904347012 342581586 326236446 993534588 585286175 723129901 384160681 585705226 317170885 644447401 218903262 858636288 745521538 73300491 987689317 115293820 369974546 66273606 834086788 979356194 781538649 169405532 129555645 261558207 617545501 465524794 173506480 38129786 983437868 65187500 641371295 503029507 340909897 638216348 696204112 889626528 738874165 982648250 449388137 960686588 880723812 700000440 622438745 375412437 665557576 331043254 147300043 592729728 937955824 123270063 923749033 78315861 864716040 715634232 499082237 269121395 851572301 433348148 907208196 362576120 854750547 588950628 556327538 575637162 334899202 116569575 200916241 821096318 943005861 536581853 580118652 78761225 366370360 55831534 135990988 56748971 42200823 730052832 42621980 310204594 446745325 423644697 411371757 698558200 879197377 803088864 407101311 270506723 991714218 316028515 201565659 332337781 258406632 709177660 159261151 610913180 514991228 362360485 739250332 455516728 912820685 846234660 353817012 260885673 764236719 565854963 665441679 581524396 438500722 93729620 195969399 809347992 108132864 147306249 138993897 740765704 84370376 480237403 686847086 518664134 510073810 293617289 503275470 214758907 227656161 384171012 54870296 244732905 519741859 11101576 808258506 953849986 379775742 748143534 164377878 170358837 191034943 152629902 876194605 705022854 38068439 258643052 326473715 499217723 316793626 480065200 663086573 44986039 373541908 817016135 625734174 604694776 596627590 797774225 749400636 798526049 660356335 120228318 174641220 584949173 603094298 515435280 771906308 716187841 344082554 331196837 215095063 3329841 761880648 78445742 221572020 802572974 795426426 445457273 17104160 449505482 248771667 473348616 828367227 574279810 141622670 958423121 258695637 848812757 556280414 779988861 715868888 946619869 328096672 740235359 939618936 963171812 645089618 488928139 695909137 18226504 8717111 895798726 78730877 759679494 672284328 875871467 157847778 319482892 572617623 274965296 953944018 720611776 357659694 203240793 652070396 388503715 699093093 912683470 573054773 105764259 260788439 325996459 708890982 526453706 650212449 791637155 274785559 49162568 872110657 325138950 661633860 767994378 10828254 376861832 143220799 222132426 131114942 152864494 461660952 537403825 435826096 323672224 369040405 842090197 18821030 169573137 99547579 206430569 573802242 119472734 273261536 658862604 61420880 711964481 337399777 60089465 638355890 755423413 113958050 9269686 589507015 533452956 254197232 566860473 368009904 299374886 870535643 800735839 428962343 191880089 722587624 584780267 892962931 537351663 566318963 421238178 102603409 656422845 409506907 915863881 116365945 690555566 520322051 878512518 415929509 201169527 216492798 442275063 380971305 132063952 512694987 417245299 130134609 295143540 770009100 480421103 582904341 521347660 832497233 388680568 166581787 364481059 986292152 62989972 271461743 794057333 420203021 766387742 208524407 832036150 985646978 444837352 735224445 674973611 602975174 726132960 576744704 106724242 940046041 888089316 523997580 596048406 373335187 587887023 968427997 93609553 422741728 196690585 229975012 405034855 183224221 920752079 987240476 185258182 632514344 809774538 464360085 730992596 35747314 309421118 196466784 28511 900907205 36989827 381363071 478582315 776091544 394689897 916216802 587858234 613629900 173368324 971755127 901578601 703193663 783440650 352997302 918451320 498758140 333382818 70468009 821976348 493823426 377323661 876386362 951381785 655924885 919227344 158852713 800110845 273710951 892337661 92650395 115196398 737603053 918778222 22253624 817278488 398906322 68521783 849829817 805349413 654584669 534487826 567066793 196794458 975440245 659348597 350173268 764791923 452434500 31729963 697520583 711422170 609482274 42945948 663042305 953289201 543596272 119795664 328279886 645911036 491178673 87076076 232431572 824387609 795428816 400177639 514538360 219040865 561054265 384496856 235358251 154105272 405601888 541808960 772420705 78493806 856243924 797246391 726965793 436405096 84214611 214899627 630657268 62528097 685080690 47669764 384189582 131677963 452790217 679455886 993548595 646853384 770118047 598661880 435438422 988201549 206894485 632098958 680248206 72573862 381512832 163760049 927925039 808641554 576869919 446045209 360329337 783734638 594319175 126817036 192964822 322192180 342833635 457247325 593106352 667230241 239818937 702597653 961554790 729646290 184014251 912324109 28172033 911155371 537330066 43443027 253053856 566894346 161281322 551804151 902089200 179613581 712730451 241776068 302678534 273958991 998902552 263769971 414124122 813746903 621805100 476172346 635654791 889004779 45384441 515563711 614030317 352403124 911094606 525009055 286267977 827400835 487028734 137458135 335485194 690864786 50327420 688296506 127194413 800032427 320320963 375508780 814351273 516244714 225493550 557526629 747575164 532079673 502239798 49367844 963659051 260100575 509516965 42053292 599921608 755614278 302156118 28218901 145708912 657574790 118264645 708214586 967010352 196142309 889031945 767860842 987538441 31072040 162085013 7382697 676670611 584622464 669044023 314625274 297823540 924355353 96110695 86102900 899193784 744059755 887392836 887951233 749266915 921109075 557899231 143195110 207176094 529730073 140801227 721462346 627158993 885168446 226788072 382011836 956740472 95361193 455991507 111231872 623416963 883494050 659422770 514987129 826910907 822750335 661887788 805460514 757786090 710701103 710341283 185952666 178495659 546568841 405351279 716337588 561118918 575055790 227385336 395591768 348796001 279780015 362701627 811561202 652363514 808044609 186054003 381913818 94493885 347224161 788388021 665467861 994599801 733903657 461620271 309770512 861172776 632900328 700931567 297627475 315040023 833095024 320948683 523941473 642666890 130365649 568304905 975789724 933688763 449961308 129879229 562425195 223994501 213118379 708520706 23540044 209834254 862270011 142373210 158910350 7519739 986684671 367355064 235135137 712714081 575016197 66779652 13902770 448247023 45828978 495734709 538580384 26519978 324590607 472689391 110170229 523146846 283918198 583474439 267013033 220004916 541933185 205147403 322407929 97619950 124533938 569547915 516287862 248377020 648242379 326588081 915259374 986544153 884435322 694392460 639308398 768829926 770191385 249397240 219865453 183103982 992838993 615580086 486612097 140261080 336612303 775047893 634984713 799399438 142251564 107826497 324832131 520808966 382021063 320844314 238009440 709449356 188669297 757646117 475316062 852881700 164527074 632893570 749904011 561465518 731087889 745285276 133417217 107105962 749193385 521299802 318698501 680157974 350500675 787840904 29354751 920887501 697126316 763675840 195065881 807724932 138291121 653963123 735698661 276828996 430191502 910827661 413969970 375149183 728264477 22777918 825269549 31134380 170898478 706173352 482990903 649910042 660387085 9138720 821834814 301747643 927294951 365153267 460987807 516872030 693004839 417281627 171007218 820839672 674933052 932402120 949538983 399272499 88811747 163337456 186671528 660838402 794261103 313365992 260368985 642472063 491559744 70227647 12494949 31562966 59736745 204026494 898212700 964465087 337337445 474456986 311500764 365298872 444526606 271250725 102547284 614216062 706093932 332584797 487234810 188127728 917685188 436765164 791036512 273800013 453674105 908701698 974990450 849904659 937054574 979678396 639637895 296947382 36767323 291999611 937937961 19732891 76140711 778308043 691563199 682232624 859033627 319712196 178425901 976243977 75434855 664879665 837635060 430178320 837216053 117984316 30457078 162186149 982576611 462148517 899529458 653695129 787277904 247704527 135178802 875439109 36525596 914277947 740554534 392524188 133072945 473492602 23429162 348451664 409728306 242605359 269444175 218997573 174275357 361709251 832120038 209518766 160170001 539984877 225317415 469682998 163025906 664758586 460344840 202787552 653874781 952667023 976471882 113909410 971209109 501777906 109234350 210247895 716584775 204540029 65999838 954787378 48913564 861893798 426792639 140552087 574769952 72181253 999732641 985760845 837584838 728903648 938141803 535014780 97286255 30466901 519180171 871269379 560933573 506789717 160839851 630442327 92885735 236345165 802707697 467410113 319028371 51591659 228130540 432492018 210012842 89554578 909916007 816570061 464483214 700066002 319371318 904479461 86003892 902450103 608188292 13668786 256349229 138886482 405445737 717564006 357690789 437131144 387926723 996259023 589271270 162455489 760133826 172415611 873379267 319691341 931949421 485737139 963852425 205520701 941995917 776492844 910305814 769071111 645347977 314764423 776536661 871686856 973533813 728933702 489673618 48536973 467016055 947729791 280907797 102218508 490900844 60443026 297458884 968624861 446672161 28172397 304931446 537210787 650711760 619251474 811411010 474318291 542343460 182851320 2025082 645973349 277219176 88680685 877718635 287921679 321426197 888343367 278041172 394412676 438530862 214239598 693363051 950979407 824081577 859545705 264373842 780175051 493270688 842213959 218216750 194553712 850496729 984007461 981339993 343142734 901696924 569098505 787039894 492216526 47068180 830433896 723988524 453745328 301082490 154520945 588027967 798403646 593163240 703059292 556032214 144627815 108863132 323808374 569727627 906432666 847606995 926112117 329572187 489105593 536535151 490061790 400820248 853264119 285585410 282539917 896862823 669297501 119377709 202092362 52259383 913518955 89578143 198852014 515685082 582584505 161484966 15166896 806225749 173467456 682107126 782023994 75993748 549328971 865800676 694625342 180059406 409935513 933890196 895694221 829080222 652001152 58459748 366148981 534296892 124719508 464276780 456649775 674376850 590781938 642666757 584902615 485403076 519931951 132732429 563648198 753609991 304451877 732542114 732400504 308905243 965162347 992073337 688263974 838001852 794418735 886287024 277788441 726634302 136068789 70879020 663304409 374926554 274112131 962947647 624287022 295891846 453873369 916865223 71747901 943272279 636519169 727757874 920749827 454890265 688222530 48283781 399293139 7702767 337068742 371237876 286780535 141075817 247419249 152284399 673010301 98792370 869837093 60757456 177610228 152127299 765984428 222962898 554425682 313619713 580909879 912938974 989528066 905917602 860728186 308302625 815931759 58700559 545596438 164481406 984463171 829623803 64771082 355464329 412914517 728563667 315335180 439238007 186557804 47180933 272519136 495389544 601227872 490919687 334478152 254934583 887444878 692182686 530792062 919854071 718879574 71280352 840556292 836310355 70895460 184756740 835658684 705448724 321745254 520692745 145332839 9205063 928264264 151201032 992514310 310810274 634216579 573840859 784378074 558209056 139968040 481650314 813278311 142707669 58387316 397384875 597491567 166708909 354150366 136982789 476799168 397137155 513789734 259120639 837482184 997475531 433787424 933046693 869851664 140962928 491419444 658777917 772799732 574260091 97101304 443350253 683417819 456793461 308666800 378648993 411910869 273751487 990464677 62430991 160377406 388773653 752950629 137565503 879648788 512832120 304330809 459169275 746942301 187696852 487515995 208495024 507967640 213334167 790583989 680135333 448231276 706534487 902501439 320048814 395475669 617328824 331595383 955894030 855181197 856928347 728224112 843644482 588169295 231038617 912452690 629054430 546356885 111408586 643137490 320257250 953813182 558101577 855375355 555485865 410751152 283347167 935050544 405162941 115006973 647392884 858862901 429281234 775406396 295975817 404122141 181248571 125616848 535612143 383385746 258532425 725387681 454286872 85247061 838218873 162751715 797484138 325610552 562118996 47190951 135885300 194593587 252348116 315915798 223200394 147447830 713364598 798434334 853905376 433249626 602795196 590585797 136939155 322613412 206764053 547565507 94192944 177501418 986310678 588895578 802870947 2994805 641977225 765259884 686173406 78125707 600372256 167922800 8045367 445112402 438827145 842596449 659360789 654163700 481294189 730278081 544324899 783358896 234606950 460310066 197532017 712611554 746827453 296703356 984084636 340150396 993790436 161811066 32233278 844721486 379313902 606019964 802781844 145059939 181948160 392046664 519830344 244377498 682152745 811064337 528198458 686922364 386881568 299641113 852676885 637920934 287208594 828380424 452622145 890546478 119146796 6406315 6451421 266369905 11980229 561375415 941652827 293384142 387294807 139494742 605494916 830091420 168543578 799606241 963239075 504985230 372073117 355732895 322155553 445863604 119250671 163849329 516845754 330291848 154548696 795963689 495478000 27713091 171468185 269012209 988849373 81175796 581204511 520970476 320373726 413628074 757498855 887506112 334616055 721236667 500177496 484935601 37482113 728783567 730532428 844262775 618551955 741104305 221683204 3683999 57179553 237716422 378984854 992020105 399771420 106568965 644296687 84584191 176878378 530104522 492088630 973046240 183491565 180117031 381195355 977964335 792794181 73114187 386682565 841885118 30329101 811249776 65520511 891513357 376285279 609049841 524347040 40342177 438716327 379652562 641604134 997227469 551809592 523205941 371263289 888647306 993490776 592691942 720665411 66362863 297330978 120832752 225009638 991050667 529355223 852781155 930279979 157866314 701068248 548123598 886699298 447909785 321459502 223874453 180567098 413145218 851122644 644321866 688317581 914434977 278716939 527864459 26888969 815221511 183551382 387138441 841054016 368226262 946363288 494657829 945133979 487832189 600098835 108179025 357498161 606029873 834136330 254105353 228864556 478184187 49428692 855157933 820253423 15669539 933100216 55598735 659777837 494981026 596464845 903677689 869677718 643112290 459475360 264190195 348025539 467947633 521705042 60369873 868091537 543163526 235079756 820970070 380008274 446041210 903450396 495844808 466518154 544657465 103735602 62710640 86090024 164714414 305484256 772985077 713930939 819296473 504992135 712903241 168149405 453028034 443737096 590132626 605665380 489933660 107424518 501064184 250611082 491481578 221217927 489841546 183234610 162562928 198425930 121322235 868461090 669284171 823285827 495557699 342254104 480370770 436689451 450286881 637067576 719356183 838940801 329510060 648111098 472466519 366231431 550713367 976429366 16248094 499516099 253422600 80342013 634660211 655876773 651317716 596995370 558975467 26986293 57749633 397856923 591606332 483296344 105006059 863302471 645756655 961316715 964263335 891752622 473611600 14965625 304989407 972296746 312255487 373110749 32922300 819270787 2526004 669500482 822756820 759605291 671431025 720959964 273547860 260401804 339521360 897683391 455339584 216502524 669515949 71622339 421354969 248548160 795067258 273898279 402855071 631758949 4421032 702087319 456169024 667897036 939313821 109382609 998666735 978182159 629782750 119836633 622830935 573474181 190245941 123359769 877696336 847267756 938262618 419667490 402419512 622815513 825433251 327774494 36322635 402519436 502260223 546552976 948083748 419953468 767386372 560933095 271817673 104628655 578206034 732131650 472943412 934288958 106244814 89143899 762019981 303031223 409030437 128679608 988461459 337028674 286981704 259594759 317248441 4457303 197869864 891717756 654542229 705799678 922446532 689445475 963796313 646396899 432327422 855383601 763581964 413386005 811715808 868551796 857945695 1863757 324862564 783585578 109470571 171404647 518768214 427552369 445684930 701535036 660253145 333172856 882672272 706845624 940042770 988420997 696555975 322174473 96975735 297922063 301416193 862098886 790778926 675129170 354058365 728506386 28862927 487371489 633296379 759721013 354893213 95344493 131148459 21427831 219463464 147021173 204189201 699526209 318913253 862517550 232497938 838095846 543365987 847975042 809893233 238984070 340690989 820999587 615265594 70037405 878988399 390562870 918551637 875255614 316718721 459699723 575430460 772321823 910455568 827743211 149470356 937780657 554419125 672332113 508153641 900056223 633823478 263851120 799349779 853629597 346042958 350963113 945221839 724298460 651865542 727237568 867175765 518854136 74012657 452396756 905258044 573471480 476435120 934410428 101887059 196724124 372084265 173553453 475629234 308410832 455921235 626093760 129959294 160890224 208960835 17033545 878813436 899491906 434553511 452227260 473655887 714321683 728427765 982200495 430876121 205384259 853123600 49471420 249431498 618864033 937578247 205129769 568753714 784057762 930105627 441556656 146624773 154207242 147539015 537355814 39025115 181201386 217159617 903545474 996091964 354577600 769633823 419807043 376417443 573314761 957939204 225318013 797103132 722832131 600362822 463361759 383382483 648952831 921209523 821838985 737080033 840031169 112621322 64495907 676058074 584902976 496836644 392165987 648538942 168790532 942706558 647764078 172851541 695201699 269166565 192199971 672808206 819933324 224962927 703668575 213094934 658788103 866917162 229463615 764369260 41531643 201691623 772455322 590410935 346464717 492656507 130196064 589194179 24162296 560307214 181223679 780672575 782916894 716002800 407457282 500502712 522283858 357947095 470288212 239740321 866658335 13865568 847400402 481009092 64293032 588987368 107856328 980945508 195448814 709314087 548876158 461035198 113086588 794521050 937026005 143180966 346866043 829043907 301348487 913039141 662501808 941111120 194686292 342381078 605363423 109467361 614659867 197224008 415214531 274292153 767369112 34335613 774156671 689317001 796976152 901240347 329038487 601004905 157140430 658918069 688291901 234014077 23553012 836440049 580307531 324199046 961160232 718097854 614825340 515836233 330738224 907403591 197125505 23097740 826805837 849158534 887902580 386224881 475955926 933978890 499705965 64090149 43878809 908619453 413145130 578774397 93670354 631212314 738799940 81616022 351988605 403536246 574365797 910378393 586883525 871850530 701395835 937864114 459756999 796380942 539695667 989412286 551932074 944296444 40203460 523696505 143393690 523768565 244543796 465017787 606378134 594909880 161367433 356438805 186298874 175566663 548859835 352957306 388443812 752140179 956503206 846292765 41039609 230691226 610844339 175382535 277073964 24661795 857378806 392860830 94272198 864477162 13906615 951847878 941977989 200570768 511378853 191546340 409898329 208040172 465931844 97466002 429458565 994369650 974616000 44083719 358836958 981882303 434560137 594418133 709442303 133073693 538772522 131177061 143985892 641069228 300926290 507757441 359223841 558279467 352413951 507168887 25680929 874192125 958771198 448751943 981464178 506182541 848512190 100200816 326629209 296491536 204833670 424733418 76939243 273944181 863992000 630391884 985108695 340493012 417051216 410087448 2413472 242676959 805895376 24571902 559761990 100326807 309163292 967908480 546057610 558168492 743616145 594699137 24706750 455714178 249928730 239963839 856410868 672115491 363569129 328302236 507571163 939821044 837699569 480536960 619606820 164812311 300835297 626702383 504998899 129581046 413499008 576940933 421202957 415648811 433894507 460806718 712527535 400518695 456640313 138171894 115783985 523911730 74790716 678652735 654083512 458936974 756316441 240736397 563546976 832799936 396678901 944891033 294387777 142418322 230072923 363373771 53277185 440831157 169861268 714666974 436806420 272247289 484697250 673647351 275378299 167538673 954417941 422336890 109988053 441577788 48691477 624983408 921964157 480521859 409975890 752235185 627400433 30442805 746795946 749032893 332858162 960696043 335888413 789036092 977156250 4336855 894456538 240938505 437960927 812431678 281422542 629668045 920784503 442325273 580723650 603700481 392557156 502169152 294555191 792149176 430214713 688604718 830897231 157176202 684403968 756809835 478499304 833020143 907990635 694997789 305145601 453156413 64040862 900478157 207402000 130875905 162309180 552329764 672162806 243211612 463383314 410426190 540363228 616898088 470836835 883629527 89484937 422558691 271738545 46970732 961882918 623520310 814696167 260950925 979423247 754293044 146453562 797188992 314832127 153737666 744558444 493670711 362437384 94825504 190640415 114689174 672450590 295023560 867089537 148639061 931849581 196926923 584618511 80390509 228041828 624775938 248672529 694874321 347683439 851222373 18217131 286150346 753439218 498847281 106525368 878537675 773828548 930854529 57261120 5741455 564502324 950023019 22215375 742948016 94697712 873200296 151059869 323836488 245413875 667170689 417972035 31104723 949425841 206624821 288539999 916128155 420503814 2357191 714618005 689691746 292594155 791778247 280553816 794697986 786262786 987693824 717010789 2468500 922998013 341284638 14482362 301656214 183408896 377206860 515103775 676100380 622563913 747748681 508901958 89179838 638559067 431309221 971323120 227411381 894091263 617019830 413685505 682005621 372568852 641685657 236817557 167502182 171619963 802815385 179890937 468946199 823163690 664905464 267716955 890693240 247739853 364777615 842238053 151747619 937251673 880474893 423091262 372479726 929528004 441823112 660265156 267851468 910671283 923403394 103041366 485870793 488330223 888939777 959013701 371166085 893575580 79153636 337932345 908933177 671496235 642286694 373546622 297439309 523809790 669134620 844647591 364247887 946981989 731279923 62204923 115734088 154263309 910314055 451892976 355771846 770723268 368336673 405622317 142422420 748843056 650001335 902061724 486619903 919913604 182109540 211447187 211029774 697521156 533504622 568641923 196204839 462676766 692130305 856321975 494926063 89492001 983584364 467730664 688584087 30285352 614068309 718437931 632853880 839654152 804837864 419980447 774515377 779726926 906782494 461955163 226357421 670934574 390289431 729326609 580156994 379979110 472866377 940654525 681867472 932922107 44071929 870496638 455982321 59371525 134042159 455708619 874402495 745885765 944635626 999702046 788912859 554700240 298959892 598271133 440907461 981315284 255559639 382533019 970817853 621616016 502271425 568826366 278438689 562575363 447553754 860073184 781105953 555698023 809896516 224559462 860922275 185603318 93257140 579340254 998358608 615692502 265369319 641890200 963742415 435773328 822094702 208611446 250827813 992013168 858655220 835035595 804238539 363607811 324037240 98348627 931774488 922691843 376764517 748981724 640722436 348525879 838895389 751856033 218530703 642005937 210294792 786056607 817571237 925048216 233722355 289871139 987290965 916714735 265585530 342049280 311031779 13514454 419176206 994166646 591867652 126397304 379581741 702451086 720101506 720194557 149384553 414387848 495984371 402843743 320578715 166047572 258564989 485522141 641476094 144603058 532560957 275864732 398966195 790552492 352458468 921897225 828437642 922573171 688295673 332503967 20802104 106066806 3674528 29698686 495413087 512759322 769354687 242662807 582417781 113379267 828658813 996654100 891881144 753586083 86791380 325284175 752465869 154539497 211056922 659173972 401530605 334653898 734831989 52681063 24780647 888411891 276405634 932013264 904361486 486923036 673135993 472526881 488021681 896810927 218501385 889881289 759124035 363920937 934297742 18429907 27358501 114110117 845139546 594682147 826252176 743820692 806979028 627295673 929570811 471630179 30790073 39554020 746854551 510717871 11586920 441156874 355102538 385709993 326442525 974308495 764335350 853917995 369240373 819330220 136718343 120441351 788682803 310607984 319850218 756390222 777327057 868872810 955866673 769574880 807959333 632261284 934984481 355665532 854574213 641306460 195914273 58103442 212547738 848159843 71824515 995467483 914754664 131096073 299681613 621053476 328232079 824437678 292355729 858637435 734602724 159380043 884053419 831208112 545665274 377510007 599007173 365874294 310160348 142572203 285507211 472048094 793823332 686304961 98232085 656467368 626773551 560913209 219584334 264041529 65638189 174559586 882124000 223861131 383348773 265023555 458549827 643647582 246006864 278261125 742681121 332014083 247978818 443491403 641479222 691457333 83290864 113406700 439179584 906449009 260652496 167787136 521109601 2209681 13112378 566925975 942440857 281844734 419736959 493423751 174433898 528953758 356222618 328556019 289318962 796380731 777917999 913449587 506254939 617928589 697994542 810019421 949590071 963731307 74495117 863939788 415308771 762380453 812570674 243734506 456082179 414822035 449711134 376980719 541712873 650701297 271537056 425118334 792694064 276592548 849104478 853801103 687896179 920404605 847837813 600475685 882026883 523367700 852962606 616308858 331648568 868021686 937110621 378840523 390959453 349918455 179941833 202046595 392056689 631845533 870887293 475354129 622129009 30803089 692591728 305748163 176542479 298145151 582950806 523602887 388489726 264591242 79452936 7516547 909272972 43538496 707856127 315065666 867524022 27532245 73973709 137789678 743929410 910037505 799466350 64481567 230055666 210824770 306000454 849249503 395501735 150596688 390241438 253103208 102551020 343591212 436865885 681380006 380425813 999499166 70873681 564316509 851828572 152672991 670134308 356650645 269411145 104898846 582591467 161484703 877870481 543847768 970948466 912511394 423983608 827736851 226373069 285163943 492358006 108056631 684792790 901840734 944992509 172259718 497084562 440638132 681062755 110356354 242223132 562880040 948221824 158304607 8291999 46141752 193656644 466460434 246357433 394365657 555741214 723896080 547511672 379933316 363406364 217741119 201771441 408147096 652676557 972058054 853092056 985862488 615995063 387730536 681888218 991581159 223236307 497911470 623382685 579112842 184513975 380683370 512619735 503351603 986702416 982240710 805788242 488927475 690323312 768899951 149887284 696668120 177788069 604409119 436405070 887230809 208807060 677190900 227808289 572995568 328875716 813161300 650130832 377147718 369174771 92921238 707642516 557879542 110584327 894134823 297529370 432867355 120096238 446399887 565886072 673162972 610426624 162045486 859655473 862930094 957389942 610655958 770372131 707958229 363990009 67404360 104155658 306677597 597318003 807928484 923798642 607773688 169162370 849026588 913937705 375516232 54036554 473089080 117400525 112215382 269113093 842722393 493607795 298015916 309283203 36873566 274619469 949700233 501709057 540789662 588602921 816138306 550310666 274732758 919241252 498239846 645209560 545072603 490615835 324800077 291965460 924599570 58688524 184422094 754863039 478741588 779774720 684596800 59385302 770393972 462603150 549620822 55581287 440620940 941121734 249703424 185038739 46238839 654509076 593257541 970700945 443252036 943208857 573834070 78538637 152816685 310126119 523891100 950559452 28487827 443220847 890398105 38389202 574487527 988380472 204672872 644588087 763103740 529861095 524107644 890263320 190909463 271181409 458684059 404982219 139208728 940563548 633404686 22940771 612407789 582508076 901164942 709798901 660875591 694265024 486877583 285257615 216306076 957572957 955889239 299620023 633157230 916775093 70914724 401638610 933669318 981437930 307482918 681663066 733474310 383912162 730613862 708990479 615893571 831503258 709246337 64649789 826224613 996821008 945027847 150593802 583253841 522012936 534752454 253758274 875339966 517306928 485849842 530590932 743624925 236027681 476835958 876394402 350434668 655575545 849271989 790543838 325464997 338607790 950507045 73697205 671356698 362735750 497784158 852982719 499677125 486246805 251587014 69992069 362448587 697164509 525687591 91024607 44656135 486566926 13257238 256840841 922770846 46444031 829233373 844728066 52599438 385906890 980111712 988167932 456004533 954897326 658511452 322747822 537301125 505543834 551257037 577722281 823788517 734200232 506018785 202232093 566587766 96698172 682266618 475101186 463815779 173803050 511058762 299780396 654781692 624720578 97148758 316422506 204335685 133633189 391185972 715070316 76354467 421757564 681638426 313078991 58064829 393958027 955283635 440223354 106994937 832944046 244106650 539084187 90157787 33736026 537563524 820702001 359480614 457396750 568109513 633600539 881525658 279386170 927357841 617741508 186446246 638953700 83240178 550466598 182785992 438289068 744706310 954558102 950701993 428006936 897993873 373042096 8941268 959602725 350961263 798273709 283422019 674935398 329194458 912804039 27837323 456272840 49682206 650938190 832035665 417788180 594826774 127456476 489309645 460933563 476986327 694549610 60426939 647512422 652962603 634957789 351258265 77336844 679156384 137298490 663930116 752088121 325036170 106302874 190021623 280793695 72099697 41168247 40923898 749558502 710684016 583788634 714296548 905186681 219001466 49195790 991120440 638467891 540697767 932672261 620155462 627125445 58657166 192443794 727282247 19706022 330764656 592480782 747697568 587305421 701125952 915850543 37271460 640055519 509736260 873208022 684712829 171039073 929216687 617313117 465465017 523464500 46658346 814185189 16232337 574579958 440831788 118674246 370767918 485547515 558656250 924758931 676510264 932907486 992146524 649775948 476747858 917962670 760118189 463017664 964574873 369069457 42797461 356551066 840307942 412710751 968437523 748412727 215921086 347456911 764442603 471590190 488449086 104860755 391419112 933386601 53056870 378797598 111172919 901226951 437778212 867823345 544883287 514418942 875775125 455418081 121053325 260663709 763951748 289910701 6013113 184845814 54441818 618554023 390950170 221749383 306198805 111426501 320972255 367645070 463355140 167520326 749807264 706117466 725469045 594299275 80334776 941961505 800852422 566352399 61789819 356803669 869046493 840077281 562085526 672214655 929885395 563870721 9933119 596868848 888019475 408934544 269624647 22321514 946491963 140498660 425238550 650420447 244423105 298806639 793219635 967391085 35228066 439161500 200123390 778904776 296045715 865623127 61093037 586961453 914586754 938297414 81312711 431393070 896410235 891856398 39722544 648582152 702794322 249891900 267918790 702611549 660880681 999923346 644090120 812341020 109433143 968061369 884420059 494800314 364972009 979484372 397941771 681843041 213225131 359957565 970984482 34177791 508040079 184041435 478795073 623736354 87837434 277016535 192704578 855995143 857044525 475810138 150540683 930800468 668501005 204496779 449487572 148815759 240601466 534243426 775452139 421490890 882609834 683770716 640830081 586792120 51830436 670645201 590348535 198362141 789048105 8077384 967719187 461496227 404269411 713417925 609888582 780151678 108357972 959456146 952083858 261575865 272652920 658660075 606549351 412497866 222709648 259799229 621246214 582204627 737428612 391785760 448548388 902481596 851715691 210675268 66075775 914485117 359719263 110464396 882209955 457627214 192200613 81388287 434181844 297360956 200159508 99897822 121980786 459883670 623166427 134232923 505965749 416140012 278552962 692102737 689596631 830355147 336126822 570939474 158728644 610857787 635738484 750045495 988172127 776504360 12746181 826444295 110012470 60873491 651506315 143183077 831452559 28682132 323977568 626297483 306199680 37826119 896787601 20885097 728214347 629408509 926007745 40227558 850693615 874606765 683039045 399630763 773320662 710579791 662373858 55046640 94536306 626163745 412070096 294807691 434043167 120615059 663855201 49683663 704956380 494228254 359402658 55084525 743599888 298237569 113034411 728737571 751086392 760479027 328114742 267320260 846537820 783542723 488953198 432632087 918784135 276114059 186898626 498384345 288586637 762919353 856338551 296030402 261360095 410961862 31270759 293930503 265306087 132656047 51951647 574102472 653345756 382976905 585531363 971544005 93907487 739988376 442406785 66045815 93139620 643570638 905910320 308443784 311415700 787143990 111566159 105066012 96777936 627242770 916461275 53329734 517891469 936763965 602422964 426625383 698976805 583518377 823938684 620349536 914305507 381956891 979062433 501111285 88194621 385698737 976524944 268089456 799748145 743878992 874836025 919179108 433057233 801719540 429101951 8564559 80318755 583254048 670534377 793185608 986625124 901640608 338923198 326756008 311731610 739819716 621340994 892137723 131416282 895698545 515647020 588605214 747436975 777145527 716574237 84522381 304023600 837973018 613094167 17226939 553992822 779066249 559833653 495704761 590700117 825107749 65338347 104569812 460136182 414949964 680016805 488272521 475676650 726535325 526831342 132149160 812992055 170974560 815049324 605827202 811465167 205544592 688581627 766924671 165744469 852341813 383418493 511882836 519879591 366652353 403288623 823999364 495115455 930871253 256298503 697576164 712456822 708166573 81259748 898846936 710400688 342464898 135007531 303916895 611585300 807069370 196943426 293670233 775988623 912364038 153495615 105060417 958085947 411245502 235547620 341352003 495001485 319532247 782672368 217226831 21943002 967743911 41042803 677120871 971012917 723572024 86298311 775443517 683230892 14997886 625873776 418144712 162658618 417337274 728419612 802833101 531823729 544678024 232327042 959642208 814938200 330672378 605387280 314036436 961139713 879832578 731960012 330072784 276355145 678853671 302720675 300144178 342439430 929445698 779062630 841194101 235981593 750533435 908041155 116893373 701396053 108705006 57152002 482219849 699426043 938777456 971128420 988086147 260797323 945194430 335613879 40537951 41131015 811076595 665904111 634190637 188248305 720377192 765636653 148284277 109563510 272228376 395822172 15183051 990521364 199735611 872610298 774648937 824367289 415797002 741835395 448151579 359045979 192629199 891730757 3911024 653441503 1294370 1187742 344424690 560696222 684653744 930934780 894931399 407616042 19568153 359946885 524071465 862662508 294923812 151420317 372491747 345019637 334685777 205388832 705973824 517326135 337781877 907669090 196381686 84125191 220857236 351885889 650534822 134751848 776654666 361584638 523524937 713651583 760514358 788919479 368190610 337328704 932181279 829992890 44512817 316569643 556483904 513652761 886831019 940254419 732996676 501443961 244415574 333473704 25709409 886606769 147177816 586997707 228542399 65810235 213996871 654017413 916268497 552928553 614658793 886235324 725126971 195817957 482430422 247420718 98973660 770908929 889121631 690536015 479474972 557242674 406597088 510023868 828166077 234270943 90779420 737128429 895998765 122283308 213270223 484193413 726387288 781022049 388872998 339504630 314013254 218374043 982297369 470932746 631566908 214192729 365429961 111023310 682059097 762689661 952462963 143388022 945099739 18583641 673964736 582219130 744859092 158248947 700201708 11401313 782876033 593483151 265231393 412182608 203585316 196310237 946380399 628400949 428900589 640689945 248656109 297457365 647165068 836315567 107192447 695187144 914271826 305584231 897730331 823010672 677613085 552191087 508385360 950241079 359913074 735496579 677784850 332622055 370721703 593927273 453887083 27030201 469661216 797410041 737062198 913287599 605279842 333699219 277135042 482009319 510753425 304943898 986363578 800371595 736136681 425522159 245760041 809720011 459705896 758701909 299964069 836637019 660628338 79026088 563412950 993440933 568034825 625846991 531565745 767413408 2938100 115903540 910084270 785358350 17533283 675405030 292415032 193610939 445239836 179435061 976298657 485173286 536012462 415402436 601639088 582724154 160053286 653787015 853678140 645764749 691994258 603472089 695331496 565651484 541692489 234136282 414624981 536858234 409306951 204781905 170949898 908606895 274262695 988598578 788228279 599988933 49074106 98035372 540629015 672279152 528648529 941659164 232252837 110455961 992878090 609545045 774735439 593347648 168280025 190334686 806033980 174375003 565327839 668333585 943874877 487881163 769061689 345254308 514111035 425717939 902454850 360513793 43881564 140850195 269950617 558512818 359648251 597209234 715149532 744213599 542396596 879378919 565677203 117762311 478091247 174928426 246179025 394434613 766899577 247810269 909194222 981258828 31366408 931901795 791161675 729570982 895973008 81261094 753467393 732935324 542863873 112825147 511221729 233611888 877867884 114402348 195880335 256707332 101088316 904256579 458361447 728457635 905252040 668957506 714175567 910078187 598749103 166375845 879575405 964645989 327782745 861353727 659544815 928932982 371056926 642556289 391603570 737930982 844395413 892628900 693375278 774217580 781112185 431755453 523807128 911200286 185625626 980836662 179871055 741547815 895392129 382574054 13333371 389860793 506809557 507392517 487006876 559267951 936629730 717362956 727684959 930802023 746133455 474520385 723009178 942226854 226882621 862159828 445894299 721347313 113420283 792387331 951492418 902035647 981394635 45954950 103142237 677246937 662148974 254951422 101568529 968404432 618438483 791930154 202706105 402039982 314491451 267287730 109899622 658180265 879638572 485600251 197695985 180454815 970724569 864959750 986759657 541184874 512682881 731349472 546418701 25389207 143881191 279934800 633603877 413661353 355215662 262189518 902028923 16875804 727269010 423266654 512657453 989227848 360286265 946821958 86089814 391306037 220971092 182335325 975144748 13941022 876449643 745040433 815986758 868320104 44658675 199612471 564642691 834170056 193990217 327241470 548690566 301125628 926082560 570429923 182366215 629034815 146747205 430629707 159016367 55736062 567040691 300919065 739286079 117276367 683998709 511873227 732151615 501168628 68996766 190931015 138485770 512218777 900778682 845873028 953082745 298774142 652405087 473452215 946564985 848788647 194488907 619478872 830534391 749252478 744472445 923906432 440099837 639304193 793794636 94281711 48083438 994156519 182817244 980348630 946166997 149142026 665465211 406770690 557529060 128452256 722452336 681481604 44974140 914088097 980237685 461781936 972539925 564560492 607759153 109653734 118010669 588839088 192687895 314328911 283634300 639296168 985296433 849231159 421062013 842807562 152417342 605655226 147441728 263029067 186915041 256953606 636008535 475065403 876276366 136148719 876642781 20441051 910699351 786234530 175007604 457576085 62867367 877861776 593675614 816502226 317727137 531999684 437425210 563796791 13061318 628267527 789890910 295061669 7838051 961250030 945082765 374836853 4886469 390994229 307284996 15468169 396504706 663455648 114954897 998276807 371671537 686496165 297871631 633835049 50849675 462142785 344308654 934533376 565210551 475705355 158244516 977739886 966079962 966195057 224393098 661789410 163232987 210557283 802325903 262312830 246088536 354738132 796566922 196433124 65265073 305282131 549220261 724085862 269384701 449287339 851808652 586794998 511942941 45269670 352974219 667090475 68287084 182884114 886501386 222218342 116802374 397206565 318624529 210966323 632309858 382497887 375240189 193611628 842810421 676494197 164804700 182469369 708094142 696292075 185608663 781422419 26475946 620964471 226053645 531903719 734913773 120660694 500324576 247369174 491646609 368682650 948263343 297690008 945279312 755282652 866752179 412139817 151255828 54122125 477502925 958461936 367121614 579112422 887110873 65939605 272465283 456327331 651623308 384872088 166789023 541700040 413990168 24288644 965063660 9602987 858225787 395854304 62010394 947438961 522571512 757198929 456388738 664124684 558318398 25735655 452375993 792753797 6028833 273888489 959658028 189769518 773386349 986347718 782290303 782926949 168680245 853139157 641272143 232875724 243323767 543545840 299287738 110558960 728695757 435016091 390255743 173435915 432432200 822487033 455677233 555702084 378768877 77095724 861897730 136407517 850229427 874543629 335684313 542789595 122200486 157291642 400197797 997330160 421146217 392256455 358361072 564399275 992803573 526821643 760995331 154202457 481012690 572403096 164049015 572099979 754145009 232431208 479642065 440291437 610447701 948553687 991195932 233117382 962668634 147396303 60690709 497366655 164466878 309783268 653341275 556747475 874988153 102122723 481304344 937340076 498876350 615510627 772959653 228256964 60208468 873834080 693705273 492598572 622793808 962434177 246343487 282574820 578535504 220188573 532038538 508053202 732079713 580074329 586959243 803723432 371028192 620625092 577319012 857903382 521105383 565989375 575468518 419241509 906218252 23426128 833281378 188555029 107754428 203658852 664967777 141503830 120862185 39261225 559930315 246549032 316717188 285158093 758742731 800820774 623767233 686232334 402723846 7747952 975812345 862954355 812134053 522595517 156435092 108520992 240814046 759853873 618374844 986116244 539651210 747261085 371706103 260273133 365054155 774909426 647861734 121154270 363323188 391230064 234291584 333474014 60895015 27761491 505598462 352171407 519884239 499129785 46600868 55862124 223700563 366325499 729151853 259352701 930018073 460188600 520666553 526973896 644961644 409222378 459981188 235564180 665284659 32835160 532086333 255598618 395258196 682016028 191308527 471750348 47712901 915966227 69051030 233350272 872493912 242568034 434490343 62769989 993968005 479023027 787404394 630367058 377294875 381537390 924991690 400407296 511805187 329758956 138274915 159478857 482660418 768137690 265738634 256678312 697203790 806644080 644760592 688168776 998410584 823532267 117545420 926430730 639096425 10686919 44967742 226340024 470227307 854305216 780924423 543717439 688205837 438023537 812885228 223681563 781132197 389654243 507245027 208504626 872058266 649880352 75864773 481571957 439140844 242837456 35366454 981875043 127826779 174588789 734718963 409679315 825670797 682666165 486409822 794386289 553574365 137237826 881172135 720673777 185605392 446577019 146311009 585262814 113162746 365050870 792842251 228638541 748970774 446543098 202027226 774874244 451504503 739151438 91168607 688173216 515312610 993251614 710229624 175319991 359387671 34638783 581501991 391699450 102581060 339881885 522765696 930052001 719382292 682054252 742875114 975065857 740685118 450919839 222687030 988167537 129856680 812135431 918337849 559447607 851106111 83106339 926877637 66482983 640677435 730850603 787424160 521661632 451813920 279728803 718529001 952191606 133695090 488518728 611172847 823637683 932716175 304830375 62629046 549529718 352490977 148455670 495933338 52197920 240364399 405180867 165768425 971398555 126841043 492706956 408988562 528897646 866931361 603803251 94664464 216376697 64138401 176458772 371764502 322677636 114252424 363597757 254228166 313117185 821212624 113439676 791042525 7959368 302864580 1865606 323175074 631067656 522115030 880716699 552012608 82143845 829078372 546961960 934031559 634851404 668726510 48898133 878784509 637068177 442888444 433397387 635015742 45789490 487827062 698945159 330554460 946847389 745061803 382599117 796944832 900162607 265291522 19648949 870484841 398980687 82378993 976207839 779686914 451699950 499706289 144429169 910386198 468882220 808605005 50243202 692988209 136834278 742638583 150449251 752010906 507960514 737193385 77459789 357305917 199178908 775789893 968122339 837601163 101948782 338952866 495459612 923467667 374532350 181172996 168227391 58286118 507219729 722599953 113261599 748054889 817738583 461149074 103253878 499640016 107586084 279159349 393106471 982810687 34968628 225030078 932980628 740824756 436174675 579701867 993115084 555535321 926875055 5837122 894582043 814745910 947229933 384501149 906432000 121845129 872422813 798548249 316101212 146669488 132767867 330551121 720631377 765689494 393752182 926539228 957750958 332110135 129947727 709811196 607139992 221575770 723482709 317525372 862256072 184291342 365391297 113812845 723117936 945378839 770348476 136137216 944596741 467168442 976883046 236197059 554789514 580041970 363471084 947057605 930678572 887440507 153583026 240440760 202635200 427069672 714573702 510662464 958725589 180169396 479414049 951876938 527102875 85385638 627310611 40803775 812965629 641095647 768863397 118007874 925562775 150441749 790284245 112135358 979825301 387951603 65957806 320411425 451793701 784139432 969406156 967140300 145505010 153169162 682746298 412709113 336247109 58917804 331570872 636245029 424898856 860365427 188987993 725338278 987571750 247698801 446132682 129645240 859542100 262478597 304924062 316271007 301037266 937095525 427035130 576968513 187695784 404284059 50325445 979333936 737604376 716352965 562434224 488496572 206665076 918776928 817031297 32169525 368108811 639305956 847684599 585426439 843395720 881423421 375209029 764519226 808763899 68819448 427299422 28935297 234213869 583265451 656061773 544161746 51497575 519292171 689805351 375958906 300968379 146285175 245508521 617499076 854962948 951373419 324653975 27808383 796269024 141588979 915616348 480887942 530172891 340155275 886424387 645473502 371772108 847148717 644633668 752485721 925427795 696799497 312631620 625084751 362686116 338029446 824349930 206657692 697056591 74483688 387966388 169706792 407790860 249204154 310463814 255847750 874951286 963066928 584653763 278849314 235900473 409663874 752888892 596060928 710028898 297155171 847626996 825640973 659310546 98176464 477990953 772294296 11765339 545474826 334276564 315635317 169183681 906705147 223384332 338543405 96185017 507976542 547778376 672992004 177865947 193264820 864492304 405202612 687102861 3365578 15964685 891154634 241047 383152273 102404036 26020037 224539399 808042974 165065260 316394494 485544065 263871745 427908047 910273304 212040325 949688367 981438074 138927017 26577746 919407097 763892669 738585065 415749444 781840403 204401109 904495530 112755764 537731896 652483943 257060534 418012096 948739768 502623685 222379022 838324253 721619583 808408365 867321500 130370379 605609368 257371787 996851965 63306391 527042335 412753647 673573103 140046279 922455208 739971298 832996039 232651562 560722281 373531473 840458527 977447996 413454014 733750786 228684486 242556094 844707859 293096918 527821483 191432472 72103081 722526536 659900468 742973837 126035163 871522071 250631936 672315556 652936662 652317945 660946255 192947551 10748670 482953088 621566837 791128488 332093898 307052969 573545925 168032218 879578658 253807272 367162457 217002005 990987699 636773987 763233987 902782182 879006977 154688473 505700469 29423541 224779277 587146533 997783724 787612645 711424424 544058215 927515197 456754640 435988285 683021902 648000830 735781395 418515600 843505245 720784401 8424977 628112713 970878967 227629656 126184565 43943632 780522919 582027977 106269843 951635671 921588528 444247127 321662810 441488979 889764309 658918091 377802219 730152385 202606680 305568494 134379527 111233466 495078984 503047459 461222845 274394783 868978931 194705380 624876826 287078814 917787624 644925251 36946337 761441310 817159644 281818445 945863150 30764368 498762297 368611580 508945009 434072515 781806943 644662449 335858084 357723792 257422687 836529449 555014755 325597411 854500064 194529823 437422523 171139640 296259857 634258443 820233524 624353486 430460597 50760669 376796257 640478408 911305107 426591422 532710698 559980458 389294423 849796954 531712807 795411577 431343303 65436462 172812291 30518534 83149845 610821734 237418044 227928903 397365765 989493022 701711324 365066729 357452416 788433796 37171057 397150493 424580770 353031078 489198860 110801177 799747460 713808778 239739474 944758242 623679990 806395036 13822874 420037554 369993698 143990492 426844573 313782321 795962378 378689938 805981989 766773296 199421282 572545456 494217596 570560595 678392806 801775374 649049128 724457452 307561428 810282730 717433689 365473644 532913802 283995157 985922943 922576402 270774883 141754563 168046279 969301742 280498680 644180797 299068797 223518771 263998486 460381370 765202987 574683634 864537540 931073610 773200745 126435524 562979273 295837390 62361201 721984201 65950788 529214843 78240204 635805627 675445949 116720012 676094534 972619172 705821979 418215912 188377877 636635961 203645845 24695026 881241697 655206998 946436411 523585747 333921640 163863550 887710135 387737014 566180379 708777391 618361435 863454399 599652897 652581626 511391797 318001194 535906106 794562791 572717944 996594774 269467073 655301516 612017592 331462869 844891650 597879703 557999328 804790656 471970777 509280004 88247839 585341752 807113619 788594334 926975362 137390794 24640350 513140009 703992334 315157727 418937046 767334477 738761338 859997669 727036247 910812364 666263489 950477313 608699581 74597805 229978775 58626389 898911060 442547271 291070535 443959137 954462330 493793535 775237078 231552150 262031817 415883336 696100954 967583222 769708411 234285449 817003594 855593954 727327905 601032686 701702351 456699761 134837003 414787228 800080725 783315430 741255402 626242598 694819515 384090342 323184575 847473357 675111549 985738966 900795715 693231976 51644310 171695908 761886027 645754679 293581799 969263134 393561250 287740409 355271919 658133407 675250319 658549910 320862003 305251499 806595842 107850301 325131401 934474203 784460026 268395504 211931291 672333742 299359666 360065309 375345477 266968275 216094229 637246280 311588859 90994509 468788982 534161901 303360049 901708995 152001122 886241854 101573425 761511771 283499806 388228492 728840336 840300745 220208666 741801935 23640464 129401322 88054640 233013596 590436046 635884234 534840305 955669345 75168658 530036696 981609076 561690725 526042677 968583544 694631607 528469653 25535276 808067948 286110683 778784278 646751273 515684980 242842631 290351774 869932964 821836389 474125949 428681318 549315388 836226671 632368491 395816943 236452801 363740894 732419214 562655850 89884236 625261603 61032898 427287520 468228151 734427694 30756845 589484994 975044845 238910984 68735029 912965796 673682762 493803880 637012623 494897926 207989 64880881 524222349 63210284 171410306 917117730 791189572 484233227 175101761 376554531 616950731 866174491 226725260 191985414 393252864 70751483 951491389 777522003 563584255 342880687 214920330 809957346 278020074 600279348 443390292 644183652 896067883 145669784 257962490 602605561 7117919 747360488 473998445 507641082 880049945 262687155 373573321 296687475 60151372 294861841 533687233 965817545 70545900 411070153 777003532 598341429 22466567 82607196 738052291 412109316 997977575 927074521 274043459 681445084 574868253 907444746 782082583 18834511 841145738 490057629 615704225 428494868 480478423 600108503 957766040 911224010 73883157 733421375 761841341 940576320 317088321 710856442 377648104 669262767 726730209 498483234 837137032 124759514 619668 69995941 119944423 744900215 346478064 157922568 51382938 610948606 76052065 337183791 186262340 94417521 212240314 221564658 741901669 227559690 215177232 512656068 129371630 667419781 890503339 928375138 93490473 541388909 608591075 89572517 831308859 223476684 894254897 175983271 319110102 695549648 743587771 868517669 678743713 761870219 219696831 364188047 508945897 174592928 792642367 962969387 956738031 578887265 26784067 322797825 298456135 92602215 2277823 468308113 177118952 719432494 954804314 706008014 351654895 252530720 997256643 208017928 978858226 104959105 813461907 624573750 516380245 570438164 578810833 956078461 846284959 143739441 661817549 914429814 417619548 878314000 57601997 292068438 815034268 821420227 78927497 317195896 369064087 600024792 683551270 241109660 202608600 346188614 269808542 628690456 472445685 939274227 783730693 940050125 8555823 857566019 255894581 585474315 297646432 34560989 498735033 11221799 84469857 83817174 200326766 460821671 620756546 485602591 793492614 188564375 143388060 333670864 549852480 45677189 799138587 18221332 153635202 441998533 426181938 670663849 331509462 623192644 885862042 775889223 891523930 198144426 889082085 264828498 717336559 608067790 703727802 632681855 996990585 59615968 860895447 36240 132917138 615429428 295415866 677052414 206014318 177779662 504451555 903466971 861602350 41953909 738203517 944582775 938835752 70682240 498133021 472541678 36177523 567361990 744599661 966924591 737920108 869036634 215657336 637620651 779744225 35599933 900409990 541043981 511666161 322336365 628610328 94145532 357767397 223904182 95467431 873010978 925444980 873209773 883415892 190066215 977085984 627575484 789934844 418398199 329440009 165975654 265403181 765257942 718725752 629700045 629379803 940790839 250168792 193756617 861565452 779573286 407761047 446117166 656035767 806103849 271571384 508837819 996265247 998181645 612465030 834398419 251677027 257982047 65534893 272354760 32490137 353591089 542964131 641262435 632230722 733074252 265376087 804698735 881775005 958091683 297458955 36988955 103905783 756866419 790558341 256475653 990202319 407239690 559159463 94202729 959716056 108478804 382447080 716093252 607514381 938989157 345023123 685857025 478603009 966766783 622057011 498606832 260303436 40788178 334538642 943590679 272162742 62833120 18086381 711927226 289650942 885720431 282173452 661064218 826565489 411085635 397293954 517807323 964192394 129504102 469735638 462047165 213993114 492014845 87525318 87025811 827650814 295913555 848588377 136071731 857512014 579700108 971681629 982910098 888556975 230114808 581119213 50048850 405492367 491974861 822621988 616056116 977697976 3777752 654550082 890089463 301507612 237943787 790053439 848285138 967271012 74409598 825429230 384373115 681632895 494589935 786542047 623978173 843670656 916057003 657963556 439637501 334024761 446976131 804639383 873744135 308859870 653277425 233362317 898623548 777037429 365244377 255691162 794920087 688629490 740183348 548360108 564905784 175220352 436217885 640613010 119132211 593732031 9737617 720529363 144451619 192602476 904838300 377436876 161651774 947307396 414364770 832323540 249276637 909030721 214420160 224238549 752066333 724846551 269343335 449258101 976962213 518421 722594653 819452811 603128071 371921745 57016036 753871145 775946316 365919091 548408402 72419023 787128258 666794885 68761654 208447472 554709174 257311101 941109360 401364675 746854619 308654825 254713086 156992086 652892758 494398233 527599486 269868778 613783066 378117296 470366942 688747936 847697820 641777507 307541590 637420593 634372840 6032271 837235644 975884043 400243681 585341392 865240426 909753145 557497691 358258251 452476593 167872128 589866170 179435595 564645912 759311665 383722261 15468680 421629562 309116410 858973016 723481006 489682077 169986416 288054467 475614679 272632279 881866049 915545812 228489435 125146648 599412949 201357731 921835336 562019836 629969136 211395799 833902372 920825485 69763198 960864705 818183351 76980664 625203783 771976753 28743658 27941561 830799332 929966393 728015702 489361951 519222540 662503295 872180619 989210222 111591380 26528393 676045144 195192432 909711259 30685974 137409210 705910310 317189489 75552215 123177108 990627245 801465197 533068181 61826159 101123476 125561349 495749419 961811655 494289113 91091602 579248934 934675444 984046512 238102182 398050633 915175213 703816744 228971396 506330443 845646228 7448039 334081514 726904634 458672711 21430138 777688215 744945221 667037943 633277828 746825473 842106966 372641892 384850245 124396097 344883337 111204191 728652110 180838692 928088104 8565955 790914834 894484197 552336683 190010765 899153982 953583592 298848260 543579506 893453478 358603318 475736916 201444851 619213081 456447373 990251528 401074757 145080346 779621841 706328458 40853397 453966948 590780757 573722857 850381732 375360960 448860796 435199770 562283666 718195428 115612573 285878410 958509773 467911685 990173573 51647743 156093500 526062333 914516202 939651501 889413123 530047537 277483311 366665009 434101391 262909252 102419799 400057108 699513614 518787774 611693201 876754854 865007102 481535704 531339431 663381889 786466863 163276655 360430865 355485014 982219533 411218474 965969846 406517810 731644307 570984092 682718470 840966561 864722703 328362455 226713989 777307562 908700027 321473534 251297917 674886830 43450919 663757542 774319913 37712486 108350661 481379259 9238628 629098131 58262592 184588299 217750059 452903863 801444030 31100356 763117072 892026504 762418369 344476189 603792968 221454415 625133975 779179176 505750611 406179580 551261310 97978779 344763990 104393865 393107916 992309861 517613489 276987461 886564791 715788548 358749928 276297488 827555404 89608225 481032486 709960074 222909823 38988928 881574660 226517064 942581296 355548291 814615326 663704978 208689296 437033363 439690085 468653575 599973797 789316666 90694871 765546182 38687595 710074427 74821682 231601048 755180136 295227695 779696712 741217631 188483769 255781605 450110809 752768343 921570377 552662845 724812135 870683311 49589509 999428568 273250619 353517166 646327500 132672191 452920677 102656283 266022189 773478016 61528146 681502934 896669011 713536110 865844690 591942706 470471436 712356348 609539367 23503491 696214920 612140511 470377717 340771308 264595121 253616684 198931574 137421591 944537867 38110750 309102795 740093029 720585734 982027782 200465734 223368063 97905084 28616587 600700308 326903087 795980961 179006236 944792767 503421945 563661229 305706354 352089278 980060913 153802205 999436159 518786776 352745595 223911687 420112722 197797252 243894805 919292575 987232079 136166299 76985287 738742500 539063205 120758528 447383405 292324074 513420905 354815542 676230518 993918765 501517789 733021047 751428513 997542543 792878860 243777290 999477445 449413682 800619814 297185473 354545331 504590408 147760306 195707342 471072758 282881262 365825958 607809277 850655716 297526687 922859207 173112051 206131877 401547586 324259734 190495691 779444697 796901959 174430616 436762536 994317470 355558475 487344335 577332942 404759529 787219287 653185371 716728361 398013838 103163193 205780135 777295660 90561661 867052520 793876999 989376798 483961960 848873415 279388478 169224830 179388422 251418392 28256369 156723767 552896906 937011966 602732176 634955798 180145953 492019482 325605040 292046325 701876550 380953969 223585724 768434774 378101523 637546382 617769601 713522462 73969510 159973545 101065805 817768077 73375003 35787600 526547052 552874851 226437265 386345825 709039078 691302284 854470759 352072649 49561837 486397879 723450564 108064694 495657494 893947746 344934950 734356946 412656769 853365226 266244029 589497633 456798306 813425975 207798296 97439818 757140129 20308090 416853505 817809702 535910429 25669386 217556325 341373823 536588852 470370247 490458095 712486715 749295348 989194633 350035061 973875688 18989009 766182243 517875875 4422536 864998509 122766365 602801998 768046165 204507467 881698921 509461059 351074496 213302613 581735868 18671467 997094095 202853612 780970789 332310807 799975028 999333019 574711546 602649989 873784228 481394566 812913778 289048486 282259360 566245815 599671344 947804718 482468498 390133239 464683650 607085167 779966731 658082885 493247724 596083433 111161462 92671530 503694837 859985393 198357106 525922576 424827905 825866263 874259704 676649233 662136839 963942341 759098885 521463647 140090263 631366063 9931809 289828303 836805923 220533685 886648245 581834600 270993422 760812867 25148964 823956526 66677275 363878965 827177501 661890260 57348835 607600616 323996694 364028173 137370861 845044686 826330823 225582744 866122289 269364481 845737747 887243994 958622424 253277629 790619104 516186911 345513074 389339691 985803952 663946810 393899792 190178106 154603392 252119357 231291770 322021761 254683641 946652089 834935610 127471045 364958666 333928995 580221381 762260839 525526324 691250520 984737993 670880424 607247265 197664735 563453723 338677777 335554830 314903442 953208303 973162368 365830905 427611872 780975273 454139683 314663509 306411136 814583032 882121117 843765261 205723359 990401662 439997661 820163866 569107799 728695476 316637967 504601638 906550812 601102785 52942532 652038875 771492452 386588303 27505236 546324176 226397425 292344351 328630046 335912442 634580358 211171394 650131514 865326951 374801501 128422643 895937175 55723807 248653252 12226727 906792683 194543663 730619848 725894495 455199934 502309140 740193269 533901085 30449924 133528301 970783838 987720707 320203543 238824073 326112000 567047886 175508007 440160192 852866447 243380633 281424259 903273668 136553569 485969530 637102883 139260461 434780611 855639876 260935583 682559273 388646646 149069204 735244055 689017118 949764542 881999572 819437606 12044582 229070903 56186901 745920036 789519911 72619087 73834254 612704856 673553645 803168602 87991140 830791281 751181401 44926202 963041646 610173971 722400096 735736210 933488636 120635047 255327930 956887510 765052019 483220578 362178932 342456868 980149827 346704314 512250976 897184843 149156483 962584126 962155905 706061347 998597651 886564462 354402184 642360512 289721369 517355063 164115924 428216877 241823702 564964679 354608137 131161171 199262848 427085137 617551218 534236430 242536636 578450992 874341378 813089357 43320121 367103960 18895533 64003449 812578166 637890373 513547616 768013783 268254663 252583708 847190371 60498644 593597868 926139600 467683185 218074799 557237867 594094995 999638286 395274966 691034801 641523513 981147442 788452558 325609353 444868196 816320471 13997106 174043027 230339552 903472771 364562880 24579341 614268628 961402152 607547650 670675726 280034777 3733134 219754711 152525691 973050390 611248537 398872716 999058261 633397883 795983383 41764 334244492 235143991 23454624 1009606 916728227 505990560 955148175 166991518 387229201 862623829 437827021 390314349 775040407 315734329 581178824 83767083 964757947 272567353 869995196 594728996 982792939 500610691 590766347 617881066 786460011 745044108 74469011 921784576 584913243 329325630 595071420 530933594 260668635 119676728 916443609 264741864 581800979 410975758 539519491 863913217 784429162 222333523 524524783 487150344 145069368 659759907 48017938 653987066 689985134 866496752 140090309 443684341 274434261 779485396 843303758 769367676 445112981 617170139 553985408 975713811 370565882 682360254 19555496 204776658 931688249 145636400 477801316 53567235 691467522 354533077 32110248 843545287 622852792 632486332 806044230 128708342 479631792 476730609 67406028 558240414 539723259 69083271 795760197 36611251 428341820 735729803 398300496 657842115 347923987 314408514 370027672 899518182 334091033 577820023 4921656 749466272 891069074 495638792 926417687 892527670 821645440 70689141 792959485 858003190 151713525 558907282 711117498 751017326 971781877 65207635 429278668 816820722 150703422 691424043 355553629 734883654 803095922 408254238 515886571 175650828 14421000 597864424 803275873 188505919 475378650 163446729 513659613 882570101 363471003 800137798 317529362 659935790 230779170 682644530 185636888 899694329 743247442 267326227 74000374 479419121 470275988 52987032 127740299 711195368 928673847 799539064 895222129 359354556 182115680 705864640 60217116 274273634 322079989 875255141 757660385 87752181 401547185 481888919 85007836 398633778 235569191 379115381 535499901 55150254 885553361 848671443 594123092 418855134 475198111 727755593 63506830 896206510 238466376 647586927 311110605 165097521 536577794 57028166 64753992 238915210 760375158 151991812 471285291 190284320 323660314 301952654 727963316 791253865 324750206 529183399 658129489 964905350 623482441 726156320 492875186 131357297 711390736 221631285 515046007 93350161 503537843 83747607 809120849 253587115 685625460 196104764 38868314 720293660 252940748 871434654 148592588 439327056 872764108 558620992 11429628 39201220 989813399 53746930 297907364 287111416 633502952 133951610 768590902 763267519 947944816 577033463 223306840 605753512 722094413 518584854 823221371 491602789 421076282 451189006 906721001 645966584 330495183 615622444 812122809 142042407 442580654 279283503 985992152 97777926 862357727 712342562 719476448 894910051 283336489 920247583 980442790 704976059 720583745 907019649 344999956 953541219 758108718 237085431 994754803 716160588 50685620 26923250 125375845 249841326 977266127 902254530 739043305 971069894 994233177 320276279 91940988 43578972 287835829 95192994 864811539 392712490 452953812 200900155 115718976 197678666 887627062 974054289 760825335 234830353 454652711 96922518 964423779 402817017 302067926 182645780 595093913 185296462 751035312 879322749 867206893 13569885 642579681 730258081 426892613 107941999 968921285 900573868 556815143 136408157 296191635 2564885 528766924 707595493 95413400 491538223 317771260 44092028 429997453 173051822 524587823 701295892 701677509 451595505 528614555 234228000 695250723 904123050 899687914 354717554 584893654 866527988 385262567 364105274 958941722 366247361 741499987 401532484 78510068 594717195 503399109 226217364 458829329 999480588 880841801 708630065 335463660 88192119 526486222 518550766 432313662 994794397 748394835 650090173 863613644 9546556 841204999 998705207 306896867 191475761 760870390 721984317 262450497 530324908 921850128 588865332 418500482 220248233 494418275 907572458 140142063 749600638 798754005 210355026 857682954 857489801 844491615 568311725 862064715 934517279 397386929 885459620 272327214 360579013 998699016 353736849 706428291 865232210 251775397 625954489 917620850 118348581 997804079 501880540 492313633 847889531 54129388 481702162 141876925 814750544 278575742 141050805 184366465 756330713 515197774 692922158 818724502 893709296 146794095 252195602 960694552 22196668 920481993 827939177 25077165 79735955 612359410 202436601 994219769 656021069 310964468 159689718 637512766 547481781 825321745 94299486 323387155 184857577 305893038 77535995 331514546 682414313 43155039 827978340 848702856 517722200 908034430 594750186 413403748 628065980 857491952 846153705 423111442 736345108 372063539 389524657 387826458 989629202 817962732 228725973 629674737 471584539 377238406 604501288 499776233 152099259 809756437 974169365 990797321 889926391 378615521 334403079 910677418 582051138 616067217 810593055 878553181 44529445 240820113 843163530 547047670 717665289 981989050 453913416 761249967 381739987 404086884 61715396 66152565 390615866 142162892 535886828 353313151 878440997 138003800 570711097 365190466 703791841 621113726 565018926 45085631 466151600 334247126 962126676 798238846 16304950 261299952 102459191 790095706 474778415 595693730 52447241 481770255 844657412 601209947 688443276 935748204 187321157 517056752 960209202 315683070 445687680 853947761 212647112 523490568 110947436 349585556 953719581 278488460 677718363 204255452 889154654 738442620 953812415 214495557 336675457 684072700 190418281 607670056 726373157 900785776 971864508 153030649 703285668 595362503 527653678 796813308 709142747 292819540 785777900 301011615 195542241 103333353 803651414 217022557 50708938 750323617 762310737 770664675 486507628 883649245 919629479 125969465 255358447 965058318 548199412 387582453 938787030 813174272 745177936 594400007 234562637 39657817 938216257 918078928 721851331 173099918 901218107 730326 658479370 831451699 590031654 367333186 525372970 566407134 790230252 942910225 619698181 572411853 246166650 631072732 256713280 617918459 209365995 997997342 660226627 92818911 51080251 954599473 639984881 623674877 954968002 524046083 94936221 235169974 104271354 939309976 678640685 287193704 689731337 406939063 983432634 217122682 420475607 147639833 474250029 588273916 356180210 870646057 157898800 439232537 506501297 180267771 422697296 714915737 26937374 406024450 217554505 396818672 466009489 225129696 189640764 664056262 259010931 434833027 17624906 164987909 705406581 394619012 168028868 291666598 677863557 888809038 553238185 964031822 958085793 76346761 684954116 568833919 12766028 295820533 702072646 534041479 320632656 78926713 829646987 560384583 602501676 178754703 630931518 671467064 465057597 819331130 713818040 611523482 521377932 684191019 773640599 976259913 970198515 976709502 667887566 666588958 788369678 372229862 253500370 993424201 900216389 601848526 329061316 824083953 757976516 866728816 253172270 977170748 710917101 102872810 407650315 556385600 710705463 978574919 527289507 764097702 999940144 389473177 104399868 590258738 611208803 680202138 964289832 921410391 451026840 486272334 470282845 990039306 503316124 186186788 387180044 503207956 954113001 424156148 823696967 974192525 559602281 975590537 703440988 363874357 47637827 426323550 950516865 230137645 691867680 808487674 576941496 342146058 140065234 559142616 869081556 447953067 541974524 933017036 948634604 553304574 492170928 541769562 467346497 941747514 134005047 114416047 291613461 168925201 324103512 465860757 24503146 844986259 295676956 654986626 17617997 393843091 286940372 244835966 250706711 619792722 342574966 962867510 662561164 706194871 629173379 674493870 207285637 999220810 28259669 899175128 567077921 458961768 423791092 764863699 822555130 883818975 393718992 915294235 234069745 933803043 480756339 134047747 502895326 844963708 100324512 96597741 113848910 491368875 162214001 627297238 118699127 523786755 336942120 683176583 528386634 642829184 195707782 81773413 392756030 641299644 855951047 684413598 182593370 86186715 901645338 755266543 644603297 532536496 566078604 692765914 365741575 948876148 965984962 299643370 608647100 63829776 972279036 657284273 966903263 783331651 581704005 923812138 618764698 959521318 825910157 678637100 959231152 789453264 817257453 55303969 568172614 704766993 435937148 961492704 598838758 278856752 558329038 898601904 137676810 993046997 133780360 156694593 990777006 357095388 21692349 934741111 636940496 632894123 423284753 371512000 404764179 766376401 817943843 440175772 861390358 430886076 567794339 612794590 974531226 806415670 109845118 928601382 367184303 297310454 341238477 94254022 853386162 697491109 948033408 438312392 733759297 14117749 168254099 552635149 891397997 354706879 217703352 823825992 243953048 491081649 821612561 814342024 874136154 664023896 980408955 711955942 613566372 609453362 548111539 873283329 771956104 783048475 224505350 199435006 264578814 62544290 187171349 603316295 551563760 397485249 920943027 673443818 328527369 170367488 252797058 177306713 904354021 940838512 14539423 918495742 425435453 568460332 556945651 124177522 14087653 400717865 400660608 527225576 768662963 363324716 77542494 767735433 375899158 775492049 731613640 659117300 826622034 694552688 478021262 675092019 775948842 533821925 311463269 46525311 914500789 845590767 632708947 154412660 100139923 492208301 52278863 547754414 216919978 996561779 558287580 124002876 506106899 951995111 594718749 803932097 13176559 550322243 849810895 779542327 30224672 758947330 761067638 978633712 116818774 254698484 69609393 852532373 640590845 901826378 956501129 137255875 286991247 189258449 698190336 18587918 604196978 87547586 580799764 720285592 670439393 545899835 235784702 935970524 245692825 725628296 892765960 790780492 690290268 608395424 566925421 513598491 825808546 373932419 605415019 492621124 205140204 422023799 472877506 567583145 84779098 711531535 423787124 655912251 146565530 25049077 206353057 614589890 471098966 564015301 636843472 599000778 335539160 241975332 709184644 217589061 188965489 644865644 339077078 32035851 797797520 798200316 860163444 167115953 554685675 938490700 760919040 575092480 834277415 179069061 422538277 845507066 775592510 690271744 47926482 540128264 865223598 530405733 163649284 915338965 653958106 706869183 722092999 465499625 436420221 118640719 464089437 388859588 813994102 353769901 974890566 431895837 221032221 45349455 338962484 618508314 86073394 822584083 156334390 887681059 749609810 690782465 299373816 530900684 15013878 87920482 919227975 401010174 992753575 808729404 503171360 956192613 54946784 945273432 825589216 469374064 736319184 133906538 456839711 841181185 203727618 20811614 548809135 156413517 710026003 687950814 782964731 175188610 141564068 135922673 83582545 672592534 936800427 363900878 959385054 34101917 125534754 255737217 411904662 433614725 258783777 295896437 268826122 788997452 260482880 211571715 463532352 717017603 829794075 488543420 169058897 90563332 103908968 425436690 84093253 894985011 809242304 712928448 990412808 822613083 441539393 342123779 670760632 115451419 825352130 877842939 868083827 816082800 313322513 683322416 788645362 413358992 45843649 737919101 970825821 231216231 702613248 864646156 567229323 333059683 855358941 543906550 465407061 706818324 731318550 334815261 347160221 806735657 50274081 970372967 149748263 392059 948369633 220015088 185793457 982481734 769455986 207459912 278476926 226953958 619975953 264908438 349068792 910929617 943548411 523958308 953180944 436258651 695016218 108067267 129949701 898966040 946193959 88535033 524059649 723442403 81294728 260562103 126724116 569882201 532846369 867194622 987589428 535938454 100362090 399999231 659992763 913400980 315050771 781202631 193050447 441715642 439132092 64446948 177147566 23535536 381231787 73981458 802897520 531376961 604991862 361228924 348062738 377798400 972830910 653792098 901149014 994061573 606619400 505339866 235940158 902354379 126530933 389507967 810991710 575445904 700562978 914399286 434196717 265496914 608933368 311258002 896890370 749644506 615846982 489599202 552153949 781206830 538113064 230931297 86895329 535288350 580047756 891477035 185380218 306898522 77644267 234039723 581928118 300199474 955053397 703846112 333670594 971156240 880307054 449106139 920778677 883057353 296968456 474421803 875635026 487093114 653792730 60874735 543751728 844079112 671089574 545836848 588787913 647161813 882452555 707865280 54687694 721120823 479616055 258395296 137566724 69424401 204286174 448640171 53238554 114045643 277936374 163149587 325375223 628041190 234224251 430836131 671684146 769521623 865404181 31415693 394000847 552127983 56708668 734640433 173903474 712942974 920525742 530617740 463642297 147774808 923563448 28483575 967536717 776150570 519534461 25677650 312500089 815331055 905993239 126874442 511411099 436012112 754334830 271770570 80728746 485274153 911341148 150216632 506011724 82977960 986891080 129803895 643886454 551144770 777806131 654530766 374542733 545925382 254008 684717566 155227185 384045289 438407460 455140294 352275935 221392139 599673351 813156820 798332327 695000412 314914849 583619175 174426761 445857659 626534194 367265620 440582932 123481882 250094796 737883007 544970313 286645990 673750609 774963342 811352922 491240668 740928850 485232465 613084273 661689146 846847313 322267585 813045929 288345219 165249937 101519087 729022643 206146089 759578126 742416995 423335674 150959105 293359206 72837909 958472422 217372363 465671703 691284227 998645850 222674257 154000365 644519354 992981160 569972463 176765942 867131984 182243079 244743096 393670557 321593985 372433214 940073016 48738526 995289764 501739064 273386296 579792590 925168944 290828157 941826058 504334511 310362520 206615880 299198505 386643041 382241962 561114974 228861929 196596890 44718211 232108360 742864534 976305765 523391621 419025773 163477814 503605434 719657612 910175495 331957113 829436874 375705428 948030596 951598993 603778359 427392264 416014886 1999814 293653520 775640353 10309125 272893703 710841097 18771652 531059551 294707683 25818204 578564776 697696469 831066486 676257447 44402379 865752117 508425524 780895110 445960402 751615786 936526884 141436689 624533187 773083566 82526890 808073134 409630445 390070063 278276533 707768647 864428252 671656793 755838967 442686323 813610387 914187705 434028126 5382840 702127743 569947015 540194755 730570065 960801649 322262495 287459135 672733204 538313834 132032804 640884797 682529268 654686315 921819421 169818213 355308193 478856890 291088356 309521791 756355910 942913205 621208789 586079553 908999460 205428366 450110920 742514865 385844988 691961583 958509815 254520102 827223841 157327460 276958218 125343368 827650335 25773526 202612965 565911959 530582180 784570758 855514405 496628626 564149170 152205869 999731538 384788653 432653667 293607816 272032705 412290977 247547890 161721675 154387568 479783182 158342641 286292284 790457962 508238225 263556882 117443688 423856660 606756784 614708205 943637256 980247771 766165696 657153880 720557900 806527016 752121129 344379331 442517742 217555080 992793774 487164041 851941585 776542728 827222003 128281949 567868873 919337725 665965551 275309631 656046752 242020419 691681127 341983109 898489410 153061879 455148405 876499576 706785186 569614352 418512651 467101513 375638106 687896242 74680036 713406287 201987443 933998185 995363154 270905945 965036684 984613627 634605001 995718061 954233650 466747266 80004893 204094976 121333412 997383675 308699233 359036216 284271941 674574503 908123503 914208310 577387924 996954711 999319406 329374092 99238939 697667323 4574201 24768311 265905608 130977769 3742134 892245642 182622993 420577492 802317093 89619576 240981189 731800444 40868409 278673367 897425209 194885286 536828482 312490863 796808566 809349326 331488306 337549563 642421596 350752700 225042700 307555116 658736133 491185343 167359686 599466496 827848076 337960018 671994715 666091595 162064586 704356601 667560663 734519108 399277742 932435188 286333044 301250086 7761038 481718539 434920227 27086395 693828576 231540144 853311953 173138660 203697175 887100791 82733930 67372208 164263451 940545557 126994128 805857758 325277885 304860715 76241345 11752855 50817091 252043641 559467489 817852201 231197549 469312430 810347131 972048675 96434439 741399447 799114091 345995176 606543665 961830038 47464926 277301043 891615280 172538836 726374958 373564148 753905517 966047672 128762495 549916289 651937614 954910288 235088529 568736676 788879909 161451891 498245316 265681440 885868919 776459677 730044056 468038663 367740110 696950070 629153327 187180895 530327864 989846599 35868755 355185815 212944913 659232750 256192005 562668886 874280065 502935837 525676046 150432690 835139224 26465457 259299838 426402738 488931451 293783371 632719014 471922524 210684027 487978265 978108404 65331985 855907640 105001078 981168372 556739055 264854324 276861451 28008618 396468602 361204209 220874881 941669382 773015516 612579740 691912626 74463803 998932303 129427824 743156355 890113876 642377926 50164157 192336436 666165877 907813518 804983935 108197710 592403555 712118515 78855876 930412428 63270766 108103839 373704369 364628900 52744255 379699255 65652323 395608906 535637559 2786261 544968106 505894177 254440243 352517220 247350893 727349939 375028261 450546192 957679959 646569162 458914909 16818920 905580914 460395786 856708104 574171361 561969333 950238155 485293515 164425071 61909724 5606389 443900386 151422907 181233291 232136417 886204333 261311956 827860469 529934101 351753173 377503401 60285417 140159145 211653441 680212531 62181043 520389854 689050539 298836319 563659167 914561015 893854029 16946107 836408122 488848077 153749955 382588500 482542601 615108409 917285218 253303046 898715609 515210206 822578007 151626613 728958850 41749340 18588877 477900715 660975056 208852105 693843858 263777911 869625303 528813551 579049409 65730667 234028116 818826009 611977621 838830821 319234218 628769257 945716409 238596978 98963212 17856652 623135596 792913746 975390378 433386274 23210994 82958217 910187796 80446214 812172674 842848155 135099119 614316861 494716146 393945274 783605290 141450873 9981750 121490435 498479665 29203228 530171952 742573120 578696551 534038907 264256477 11800793 737767855 543724482 591268135 943791301 169727192 908392063 464035058 921689692 478817814 955889776 172082435 422667473 164894901 738376015 720720412 457459737 120230974 542091757 783272882 43415735 835838939 489202906 536842213 114664833 562122745 730067217 844328778 755793327 79574971 178005946 100564814 439410712 744711522 654922950 236032842 309809146 475319168 632217184 596384851 564227843 993777782 860597322 532675897 549679210 202132851 548996470 540058152 181119804 796688433 968568268 599042761 613941267 984507949 162900197 179651702 938722367 213865669 21851173 315809317 341197468 791413799 549207188 720849934 506995743 827517656 143175911 917732930 691603596 814093224 415298080 980124437 193596266 603485188 830544510 832082385 950168535 538701930 993916615 440680365 23318698 267240726 626739680 915494893 452102223 543873503 940535995 616744275 623431717 269064747 3186223 116729496 13561955 615361199 505283106 48263725 193808954 487879252 328427677 293796805 753485742 314681377 753880688 698538525 838323595 487669903 33724666 571625382 637323924 288537143 110930461 407716877 561774587 720511240 949555907 480148499 274915872 594088237 169359171 993729658 308185040 962599065 152272446 711013252 61583936 112099503 114410374 84607504 880525610 381727423 44652201 527248171 920474354 674576880 776080786 862611445 889547735 883529339 578681852 391748934 448929182 989489811 703077785 868979791 593714983 82835051 863879791 694627511 761849631 89742809 505650491 672934675 926136172 669212233 376341807 57153024 943071906 88681788 898423668 495280568 615190894 287427760 457465308 320942957 634714963 225541762 790780779 797270027 307581557 934224629 634994949 550478649 376503037 180386645 36122659 812338967 66063583 572327322 143501927 967460503 77501781 813994704 956501214 444972981 465523398 476598902 701264472 908733226 480097086 563276411 68914126 495272124 843995166 675397952 660722834 482111011 220098801 373726528 639214863 553628699 203711720 989647467 893326005 561976156 281359537 662654555 388784216 162821022 61657219 884910267 99135222 529128192 852469916 436047087 750828767 732023848 525288450 401995957 109936111 280606665 716432653 875345026 383477050 176848950 806382363 838417025 498187621 622551191 270078328 450924941 448817622 194489270 756578181 851545331 435116026 649230095 713171113 127154944 869250535 143292182 528384902 482285831 556713538 185262100 908779129 265246781 91834649 32916737 954600912 502978665 360949543 468139191 254970460 375022075 808087983 518390023 863954475 326745438 988362545 193663409 740714497 574756690 294152191 389145180 837558024 964698567 513612958 255293553 823697172 989734028 194610108 840572678 707327784 814468192 817493366 982276686 371946597 315964570 89498888 890442826 943497110 648807649 785108909 605468428 460276301 936378648 545626639 890593874 426172459 557087653 943478088 845359708 92294938 729547011 172015281 88847788 869600877 285966727 696062219 443168990 987203799 213931836 848210677 417388799 301560952 217090686 683547856 451738733 949506771 70891966 2863017 19916996 248820862 276840140 392043333 347073467 646846686 905459103 818886721 970619545 304246446 108375568 763404384 719211416 850974134 771993025 583040635 289066361 527876259 716616269 853432663 14875020 992318929 190345264 619586521 848905835 483875259 38841940 319865774 466678237 217936871 660726291 203742191 518848839 516691433 6725605 690674587 433864448 465393008 658657486 451929599 215164663 279528951 452593478 882911173 134194209 448194823 921535639 645370141 85433364 667642579 359887786 963536140 410783723 11975297 968715722 224481768 907600659 968378302 724173869 436826161 184626531 76616602 887182742 634908428 872453055 919416918 540153775 11432190 249155010 542241355 758250196 686366236 233826244 586781228 197155468 317591435 863851749 794986426 63506740 41063915 174034186 533407671 962571776 582075385 142643909 395401791 635830215 315059116 132052390 821965674 313868300 385746434 571782776 639731821 694516975 138515104 235853928 516268038 604987219 609318906 349940190 183293599 260424482 979148375 116260427 380975286 834340892 90552813 35652839 954045192 187606579 306193246 107128328 741733247 225707880 446602436 424458074 390090453 435078337 264035087 758912358 870162767 422084992 531035910 43150526 837061094 379983820 163442335 396079604 153872898 226784320 461942947 95569369 691105787 581685456 425440773 456579997 468709903 132182717 128448981 492938794 561374841 502163920 445771545 444842322 585181940 572528932 106552968 679523561 215852371 538789846 365243874 265418361 16966227 445895346 274182684 385280619 311827085 608324405 849399067 746800794 887329217 855088533 277886389 484182640 685387202 934105614 848783491 828582363 796460554 909522721 962270448 813189873 508563461 768327784 850712965 517963274 639454796 878400916 485493880 33872992 705727333 616858872 750461752 884627443 670568970 311022624 118245839 796698063 4709699 909266433 345335001 773208055 602259458 741491847 642517443 403303780 723547965 243548542 565480907 154169136 926299770 75075441 186545999 435074742 296136252 869093754 681900149 281008836 507522542 385452380 866519934 312861445 657315344 827731395 316301309 963807569 425486147 740747286 415957812 563104377 768897199 579139961 219529767 878558958 955788207 62105377 386920252 390878525 14860917 93561013 337265254 725681320 440196461 246828967 241958813 225140990 553918698 762546172 744488870 12921403 994567005 416227312 271429040 425909458 499728447 329030212 521390291 446747484 747463235 195483251 765788167 235269173 48245626 492043924 886051886 615926996 285873535 403439110 165704147 110437837 268197209 929773784 696734686 826248587 602182243 321453027 840922193 412198645 566564213 874174028 761308073 921079594 460359755 251861468 447337202 393972923 445836667 784358656 273436413 338552560 781572785 86230952 735671650 71625975 926543254 609334911 178807548 404972042 743206992 595522681 256514977 864608048 327442749 845881731 736017876 270043353 81861065 628405735 835343439 483982276 820298139 986410131 186338812 482011737 207852765 438961313 37426379 525734055 241490620 962523102 877861565 366043497 853587008 868456597 605858836 516731973 580579746 598547066 424196451 880758602 56537898 59506358 677643179 667011758 686037094 219963449 130412979 543387352 478338493 427037598 113709866 304399419 60509598 722394314 670993099 787890941 943078860 527129287 717935591 174908717 532971223 602439320 431025775 551852936 241092484 586020515 218929897 953615745 686656978 970469798 542424338 721434695 430307050 21710040 544450382 639829322 821374180 673367632 620426184 528742304 75441923 659264377 604258710 119639738 897721217 801677917 485394957 860551135 55933275 337062236 444222994 239281211 232269109 37671541 736894636 260967938 288846294 189938741 658250666 551144687 754300255 621098809 13129315 843726076 461014798 739657985 451240016 89959889 707255032 715368690 960988738 758328457 366615177 104565084 444039021 449263229 969770447 444771298 175148049 326713723 791279504 367321930 922538819 866354439 317596852 949965483 527991647 323023842 121721866 918366688 454358534 895485044 739980495 472198518 570689008 712819177 567576597 84027241 463489872 975135268 683442561 205669385 600854673 902687576 877106443 217723400 803712546 76898066 330125673 320562929 343954497 21742779 817852477 60861250 408138471 217846061 893498111 5968523 745375898 63418310 494033840 232041265 105439621 269176684 538833235 623822009 344880417 736938250 326250104 447289686 718915419 152109648 453941562 930295178 20048374 565922941 300363678 137306238 19660716 323138921 658028564 497415841 785342017 555223504 262481541 378740097 734987935 618558716 232320795 960198595 231865453 39088857 273618305 941104202 862020134 710442306 295566783 953844450 444029439 5461888 659142351 399681472 125903862 492289231 635421443 735839912 564104115 64464526 204804430 352131549 805190521 65451727 187064837 807170874 908167738 507830108 640078285 145464505 836333518 77521578 79840810 793340646 374415553 496983380 21982291 310404056 547173543 598460752 639136429 523649122 925809784 602370238 561800924 925841454 787988907 949130211 674544295 979243999 354017182 727014199 752718451 389307243 519155432 995689201 64230315 866114907 653007899 731947577 938504827 617751907 979624134 995465031 760584633 371087370 515478767 366255446 358546425 805782172 506791201 118328826 501511739 892641732 692488464 193525047 51654546 499084929 632811726 902200727 101871494 921650999 640619667 394974176 505426166 362881125 166409320 31163629 707711265 712523253 739620512 800702177 650655012 372508929 680095250 211720315 690159602 611339015 482148949 686158235 622727871 53411663 643337907 514256653 526922968 828709439 813639917 124235105 575826785 937152658 41990948 333387222 970394877 943372382 683748877 180611606 792952256 324473579 667237213 276534365 893174471 886918670 58384944 658982042 41413607 699524044 768942105 848818082 846485207 38565024 440786856 233283200 90700512 212773220 425161854 872118597 543390379 564356568 227850249 149204398 691060359 833650120 183255985 633091819 799026001 829459747 965460252 905417721 196812715 387151847 780900909 161216935 599235090 410160668 3560134 505125891 900049140 598387713 630381314 997074876 755225101 868186769 286431128 138785109 216864382 359438382 412981803 389028451 673253931 403566318 693401735 571364800 610246688 142682639 471978030 150923963 783616759 311974803 468768705 931609093 22037737 780366629 833421267 458824022 50523499 951794191 964741541 284654544 451662647 595835058 739670738 959230998 265673448 653637160 51537449 239879343 894025647 33870751 302663771 572764869 157494953 312981757 112291239 89460099 417778203 198710696 641511695 622355582 658043637 987215700 645007497 131437557 230763373 602829525 59858762 427302541 25410749 960445806 114080219 997835833 163922717 132323969 182603646 472083814 413561641 799116878 963155621 351790492 791539879 139709211 153103690 222582505 650367009 386894761 411729924 425848134 90073995 669465804 239061202 270283819 768653485 338220773 787723166 626906648 21565549 406738528 975053703 748507104 157140321 150594025 99176236 2623432 19679756 577417175 487553989 745989843 783137719 722708738 912803542 363493128 20708978 969937680 771130845 415936182 973269911 468386091 766217670 603187462 24817264 181148119 800796064 510231889 457793773 22852369 985451945 248535794 61440537 410640236 168835128 662708503 966919113 767317073 75569159 432522809 276606824 895160991 629274801 150842805 81626816 33401193 654722295 192659321 932392640 912489702 53723199 255410938 553160974 515350895 29807726 621274398 89088744 219976229 856926253 856128245 246795718 306067797 57674269 447102113 553239418 489442541 518488191 260851952 949979823 651029800 199144052 685946087 739684747 269279481 590645714 287137342 388561113 772805261 25044372 477542364 962656236 992989228 272887399 692264306 963286855 749714794 105287808 352554138 960710421 53294852 483755344 419313346 992281443 595099086 971547754 976509365 213732015 579507675 917037940 863318180 970101255 432896172 105002199 271768980 506734053 256514683 653809274 863210564 791493669 412718428 680214063 236206402 393256815 843989651 512979043 869019999 993518429 644483450 376749909 61392113 613765029 423027741 381768123 775967054 590757075 386709664 463324897 569582417 601620586 270980646 488471769 622108946 746973812 623075152 347115172 641360768 576408542 880263071 863831524 37898789 819998628 411254277 776501217 252887401 417336465 87338023 345138671 295104623 481268367 446374845 148310583 545260806 343819439 499525308 729854154 408464117 939828172 117225540 158860806 379262112 19911894 619946823 584165684 956369324 468341802 540136123 804817620 258519649 330610032 487673888 246874293 247157039 331813504 913461915 615966567 276224073 441322766 790694927 929935897 471793570 750086419 115350046 537741904 848966597 434448892 189181728 76779911 656874610 242780770 268863951 54381690 385939356 777486314 933807674 149444665 741548275 607279515 502402932 358224751 225749442 460470031 954947929 446665870 150139338 914948125 934225478 792039589 227560306 19931180 926542736 611211031 901159575 104569954 317942572 444940464 946210388 200025787 994687661 975160967 918204662 912140573 228041869 655604158 280281703 875128992 731096823 600943145 429575695 264134158 800386367 8920747 137396331 26541752 76335923 724300879 356043704 641125620 348930727 767256498 961706344 330766694 843096886 620753469 219915618 499298894 122199359 337431440 336217784 591163508 709676289 776773473 634705135 357457802 515299224 502966792 504483224 631234561 824758429 811196594 578084324 964526176 59779805 261054996 53282497 875750975 699679884 912770652 231597129 959795528 804848866 878659626 700213338 805860621 349845468 780721236 756012788 945928139 314831945 446871270 736563978 235844427 367177594 360273364 792029844 73512953 317749011 672945297 898883673 491111563 865202610 342112909 94102260 541064753 134521771 262597334 734393586 304319157 490672021 90786587 849699227 519657943 565968652 564668184 476668218 953490105 803056258 702676176 364734669 289681316 83224503 340013031 14431431 943989267 110256969 700679622 376418569 758355749 301590061 255425693 788095507 25159249 56757194 559713314 557274160 439053595 296580902 838612951 176150003 815964076 748323273 550954365 86672535 216391032 208391339 360965540 943692811 553764827 493151822 198783731 188096800 226246127 86325590 32623220 95518877 653873480 237654499 103953844 614320889 544386077 198150584 837133902 799955460 521946767 633576913 133556910 242130901 558416725 163620771 250048377 674645264 450723455 806134194 489274748 197336212 883220758 293408387 672428362 572989489 854078656 760680106 501465363 293862967 93357249 660094642 987027866 19224018 644823465 461798117 18491682 155251034 473653773 681391929 9408914 714469729 453621368 515491349 663487115 713006058 700788790 995606355 59828931 926109100 739954144 567660208 760439229 781125817 703850901 361940379 947307636 789434693 593046645 851599165 525233816 961644598 425144376 634323652 576127474 460128363 215161675 849196051 52795752 884247474 549505545 234011062 395274988 78827332 527031574 818489920 997945455 188408324 379271068 926281368 163598476 658868016 639423555 561290932 774142272 856709872 286695350 317658658 346724643 139177130 37224518 144455469 373798397 588699018 211814390 702849082 38687920 400641559 92954641 882163831 101653645 23919129 429753499 971431502 442125915 26269518 92308898 946740577 868751294 364790976 416305191 928778491 171422834 378224002 498365785 874969004 521431125 906660441 230376659 349030238 795054891 331670045 978581849 131792386 932622480 419936372 446633738 19005780 188016333 57304576 152934684 809830668 417584852 74125586 176977991 403044521 69940029 686717613 708986264 659966451 108266523 621062707 388257834 578555301 785428561 663850147 3790067 737816094 912641185 87877299 91215765 203083303 495425893 782573275 803777620 717308882 333466400 459162159 768073965 594197564 369383154 8473167 757875342 173580486 278280897 414208424 72600975 609576872 741394361 508070878 702020083 553138308 45120756 317337157 999316989 668911348 212817892 784733632 471532429 932844087 826392370 326414821 904778853 530943645 52682767 922746851 488196490 950589636 806249670 900434151 99170625 510372343 35665483 212563036 881888080 465878000 461415652 329729256 810445682 453120547 388299852 511238020 982012333 546647891 182686459 983865818 66094796 69675884 809257071 334251732 548785296 602941136 550228914 266215689 344330431 762850220 512601537 842232808 492621565 759854230 19949117 159262364 251474785 331114901 133410748 15049603 95646464 110446847 368839095 649442116 679620398 517056087 582830493 589612410 277442099 256974358 256372543 732424524 414795721 966102889 178538561 938671417 613906110 498533041 175466544 780867349 111318526 163412448 385783996 585615566 756144398 571766129 315858623 434767578 11399823 342362069 246788785 919393400 35793544 60726223 439419730 680117151 752189837 261174556 755489597 319514615 111449980 605288294 734892612 25123489 118631861 210598455 130009791 538642106 254302696 658118964 165218767 642943924 900510829 242667942 258478508 511912136 871236952 810917296 996824080 695165669 186367412 629777602 651445078 671388615 620742834 96822581 25755844 256285983 834599254 24259604 490330139 596640034 376460561 514779530 579778979 368747658 760230212 343966436 216495429 315047588 331113325 779412260 884418968 799285379 277617934 656632734 948733219 233372121 509511436 241722509 247134463 203197821 34007211 413368509 798536183 588422272 707696691 104066051 419849442 726718054 765787100 400290845 667084962 507271777 817321818 582655030 373670740 889507330 212015059 941588925 780670763 482653067 283195541 969640340 618223943 978936663 88295224 592733046 66418095 618707764 57939751 348436554 191032727 498734527 728419533 416621887 846148570 187007954 65860503 228095276 711844501 685669737 637488287 71908361 811514437 531334452 510866956 643020984 239378431 70425135 939606280 520804954 533423152 765328748 59279087 411877391 27503231 410658401 262155528 611223470 520059170 834130187 325677957 825406910 867875478 176543551 415964796 33404 450953330 857431731 348677613 582510770 779835464 869142955 350646913 240983750 621836287 324187829 723236110 302057798 760495691 996348242 397450034 885611510 88846058 322504563 999413680 341062404 347450675 99173826 254534242 209638799 438120824 270183006 578039836 22145167 352841102 690176641 77864904 164484530 169419379 771799827 164996052 521690566 912433760 373760200 403221954 252824582 698674058 188456043 112203112 504735977 866041313 316506080 571759907 105693771 484251469 852461568 634508788 769799632 85963687 213958056 218293613 163413747 347827194 850266344 41036271 505667991 279791391 602795509 229217765 3409508 276159930 608065747 511499539 321845236 161222710 8139689 679421899 236544547 807856110 970834982 468193234 618972188 389553337 107269971 354253876 94229900 896799658 608633795 753557597 98265414 121418527 984886374 119115990 705255737 448006760 757486226 546396360 616117866 819783485 7260830 69103704 520142966 914109702 551368627 342248534 866547288 839286781 464550630 22346540 127902607 205372681 515117593 387225433 34600502 356672650 571854497 831340117 679343298 157267123 237142789 774840766 141917993 225979808 146867530 245310581 19923997 349901209 621104985 244928820 780683122 564690308 685424357 755732289 663842256 187180916 147538762 854174370 250367405 380231306 97658605 555309752 244589261 572441510 146545813 25408328 74777250 99281570 572260408 334131315 731572399 909895230 466800304 836737278 864430751 206282801 145449003 152127643 885249132 923196125 13572280 742837598 392018524 610834557 61597788 401322577 196855101 418935194 292342436 610751224 641273272 590766347 962880065 380334200 446629648 937391786 907023758 300586716 887083991 805137573 357442999 9560142 939129071 664920356 231790754 108266797 414537751 768637732 75802257 543848919 637972240 658290669 850948263 967558808 715726610 276649386 619928011 73137111 34683116 201980788 874495577 571634481 440140754 228214115 734100784 861089585 756727113 583837792 37021292 652686515 509047225 562206976 607499562 603704699 55568499 507407032 708492406 26814804 277730123 134934442 83626311 290312182 10764759 455060638 699974230 333403897 991848617 547594661 517458538 464548106 720751008 560154384 351102209 100713662 199451605 934875140 65387614 968820634 826792204 11673738 630262599 328407270 597295778 81430115 363117999 955578789 965280885 59119232 580852055 313717472 200955943 238152333 690351187 466519599 423477388 364985631 895023901 479434503 910842491 590386759 344164687 974166441 501932385 534273284 479913966 376127040 459219147 229273872 818372198 693531846 635694986 227107983 491274571 181836589 131281432 664210929 514403066 962092200 439800770 308782312 269293576 229666686 257749443 930908914 114593603 371865088 810997625 703632980 834411682 460230893 363448559 475687111 555863868 924479478 876515448 23179392 738475551 443298436 587758683 984429225 275892763 851403288 612959052 173430857 891327365 773995703 325461274 887957621 807019086 101364443 902752938 939169119 224987698 323284314 952338667 763794137 274530811 207466463 307007387 798130711 328922421 433198790 16046945 100775452 160885661 199784237 730113640 212545585 913895793 308851007 971911414 887907253 414773518 404274922 35712352 742916079 606275586 970549083 864109200 749882196 279139002 735571073 130677322 625383355 99086410 315041382 298308249 711115827 475074136 736759210 231303008 762641986 410964381 578231326 623093011 453748044 682146101 283475672 817559751 448210464 586736989 807072590 268764095 695424586 875956512 12426563 435700591 445896703 337088846 881852752 648452551 791159931 280252189 356138391 279837753 770744480 612652197 618778535 111860441 670292142 433649850 656080998 696870937 620323388 235297950 719607244 13455755 371659694 810449247 707680150 483884339 271076148 773610090 963000189 344708441 238065101 622459046 33276068 974495953 146402368 584981805 999723643 425411435 811916303 859975738 793585390 428782032 84216046 345144415 172248550 126584134 36372171 954182134 551097255 455562200 80464505 379370955 145572773 304957569 696728135 154100849 607784569 741583284 87122222 490199198 975351073 187488126 441672673 589595519 502996326 711646716 308535621 310097084 340947534 611315527 265780455 404020095 127525249 612556940 874756701 824131770 738799123 347967248 127815330 107638904 660483614 812060374 110169420 301998651 34212138 138155717 906906702 651043288 829738204 347610828 960764132 168323324 196486364 986324408 419178941 234854090 613326887 159177022 255528816 73345369 142804802 632980568 994956426 400436109 3257961 646236020 192277437 412489484 605843989 637115001 30173984 40872403 226812848 259765164 590345415 444611933 942234296 161290242 158968992 932333007 745865914 204757657 887607444 416492845 625390989 925803167 740948793 997915539 512968823 351718972 915600902 587542844 892584180 37727695 523765109 897839641 393427311 714888497 892372541 935055083 813765986 728978529 485723548 270434096 472934471 458655978 858026676 183147024 596392396 911595540 638267758 802433384 31574949 360670702 40942951 719552010 835688001 382455666 592475042 663802607 623256710 958453419 39226260 810582900 316441069 409940824 330701773 487621597 505025279 884145924 451864824 920416006 610763280 622873909 800444211 893086203 520851780 661858629 979850886 570691604 676203152 814416707 765085468 287557844 82656634 473295518 327743298 148391039 326634354 18574815 491058605 432259571 160049366 607931377 315060614 589621384 498625788 400136265 440459575 675811128 1153380 237297216 362320089 393831546 834505587 968595128 465087012 398447995 44240128 983664063 632036412 255553317 32782556 153382673 946149046 965971123 568344137 836121530 386154910 993470318 360655840 717063550 372821882 291481092 748558240 661729960 756713232 824549743 245560941 858645966 443259764 397016217 633335330 957659743 840048263 137128362 754082432 674660332 802870290 223261735 571808141 367406871 418621696 816398039 801173855 863295847 960136397 472602709 169985596 403262975 407765749 663780129 603566521 804213263 937648892 24074715 169565898 499980629 641747598 288502425 839356758 853327497 879838511 121465468 266909412 435568823 792665872 457893881 33693032 638132803 434277822 123655928 489545 518880453 306974928 407984323 393850490 773292684 220385479 614328831 123695982 344663411 742659758 106945076 261122418 933965360 870770262 428025098 582069459 280681050 233074757 780127207 885628543 10261702 923505635 796893400 213553578 539734158 456345689 812031209 174861454 325946587 198898924 962482020 509292667 20250588 38246250 934000299 119904495 666087710 930873335 44768210 304649396 36316349 403656867 624816484 649740579 252677315 845324866 785427797 341395960 307076081 907912438 882107148 743612523 829191405 265911049 858893048 177717360 564795150 814062153 762183451 821793636 39013703 918981198 977026696 828791302 544588173 162382505 228337066 424947878 177769051 630960905 702654900 318996175 614118714 586845163 174218948 412655762 553775610 773167017 998920042 417768834 930021210 244834348 580791291 51843878 927092169 591172476 160113029 88853060 973146522 564363552 545527074 423836364 425827821 883154156 381179380 192176573 314464375 936687598 772923443 215564663 949251929 287593268 952790188 350013677 444237186 81982431 704166196 124972597 462351963 377068958 874660840 653359907 653448419 260428031 285083067 482646527 664230552 574240977 867594077 820382882 735994734 218234037 209238337 613132925 651020595 470062111 241752520 886647188 912196488 354761013 167459214 12098629 177676744 221488923 913018180 207068187 951200368 459526234 80651522 844358695 632845553 222620877 199960953 452606449 818589835 81969106 216270796 669331936 37609486 444541826 114510834 615483111 570322740 823906845 735079354 799324966 225035249 122970828 525731796 188956415 911135794 968974501 894093292 38283263 532660519 520083924 853833865 183137930 361000899 395808172 503899148 624102215 160616217 754506897 74255274 934385753 518972500 424064969 351445147 266907562 649680703 889407452 147309351 179505121 899355122 91935897 864631148 302919585 638948322 66232921 378344692 228606460 345085446 478775916 397293896 229965827 215844810 819302246 435531701 837821246 451438537 403305561 148536947 604704976 582280106 968627262 363266979 176995121 843543361 649700706 42090460 249688996 349252841 744489738 560586555 855649039 779308982 769706678 986582960 843752878 327898741 299246563 172437123 909753188 169221895 805827110 549393947 499861509 634735152 62980341 604887649 212923919 577289945 267976653 80479215 127090053 680097151 313455588 477784900 476930196 588083220 504566061 802191819 321098817 618413067 773301492 311920686 189176623 375746167 895286270 561015247 391772881 546957193 183595801 900459808 981234443 807626684 437113045 208384659 550727928 491844676 193227343 113592112 604780683 752999665 617395366 281978252 360725555 248680089 761495634 882524859 645884676 965595518 825164172 613577965 618965994 960553428 941956079 785088369 24571350 108950958 356083084 771566962 928233003 632549078 33077200 340513622 782015001 743481741 53121937 575722775 635870207 683749911 406286322 126107419 788848249 861841270 132331044 160923608 410325465 207941412 280297534 682643934 833713654 511761223 198362540 134843918 769266619 337929586 5319734 647785714 415639939 100299784 764715916 392059664 561319172 941170410 967935056 331108174 178491258 373017725 696386461 742504116 291242552 446333879 52385126 335095695 533527962 11429611 250082018 282737866 555403127 540964842 449982301 510175574 924541198 707254230 330708073 283276064 162455158 801312377 498860675 946061966 947655327 382020911 903887233 565693853 604338245 55801656 390001047 308055923 13571939 630792293 197481501 582746407 350761625 197421469 497623539 372870145 847166602 252696537 372031406 541766952 594332833 723746726 214711443 39481994 363600149 483264775 305422820 589570608 158496730 678567352 26716795 517659630 932435655 943086943 210833583 605946150 118236269 26767056 819629566 770209978 689819326 730278609 787307607 363543012 35520532 76527285 405430650 397103319 242934655 737515858 998954687 86244485 205088663 321756943 781159264 307347438 555669028 23457879 638882327 295204287 167327204 623139322 684609705 354280770 268061947 254931987 952786437 841547800 78527624 718800181 422803492 365287903 927041769 192542724 926949138 147264222 456578544 931609954 540022853 95322368 647274722 390548027 78471117 728005585 268243222 220112240 112524324 380565207 929680431 777179570 354941637 58903321 46184214 841694455 477222605 239034565 915928935 94915363 259816585 730914308 898483855 614912164 807225065 72116395 118263555 187450491 680804944 516395925 452252028 966769045 538538186 376465171 925149481 67483847 260574410 388610532 975023433 572374197 98158148 326814299 552545254 838817377 802153878 920268451 785715332 360162840 520438219 684641402 273607597 860562568 159653785 276128799 185583582 31344475 221305071 593845258 4610369 312879280 43646250 175108562 242582263 436283682 973481082 371761535 381021610 583218011 536954156 396035570 515020202 52924329 481568952 461306491 74899551 372099075 66322128 674152199 57396203 385960827 85373165 351276069 637866153 114555402 898517757 970561298 189592576 736614611 385772961 970035966 306016837 498603612 585965609 325986444 119748895 469974793 907299368 556238306 550963693 651427109 784793598 86987466 499249902 277116200 492497305 725729861 163196964 960951744 667867867 519439054 172308832 959355587 545961220 876691958 172440864 178263280 164761845 140539389 198293220 196545869 191391723 555161989 524334543 676655758 216906630 15587558 646149811 445603513 238816889 389653255 588199387 654811804 252133736 717957715 377063395 188872382 392973107 516972706 831795968 842456736 474861437 254466210 141636550 58283890 905696439 192862035 658807025 487989844 133384213 498032776 291027069 952818693 3098513 240467173 553182638 480224128 28702888 341464859 129269637 965573529 453114037 480708823 276834063 511048593 400024594 520330564 963302312 450191246 351713216 582881514 128928034 622809994 857683283 448241899 168614226 695007216 950048261 83385163 638220581 313223816 492652317 813365016 396127827 419847613 223091696 105982118 313141004 39792254 765540354 842481708 806313479 226436083 219577436 672487487 883692242 57460121 745981462 279253876 156517718 455948381 433074140 42573149 650263258 483834747 326981082 930149062 910753084 85950340 330228686 219281687 97732745 276833086 713269109 841786028 409806619 553001181 618240009 767684428 231502833 139447893 39761251 646388694 283121228 137106539 425650790 395500515 131254147 19653373 586337036 700067314 946883861 100039603 427414184 7318111 929213251 932665068 815090239 583167387 338514765 35866493 85088966 208012200 777750492 336021072 673563393 336153757 894114139 679146451 574175258 302081706 15188918 36849126 671877181 879949856 290943392 854195496 237843678 153038790 639666513 834369859 607410180 589080846 532402952 529144960 691861495 617815075 746669567 69097806 766345761 931055822 71170153 731505500 600608793 707968476 214366840 414179026 678153668 874897973 703770586 872513320 426311687 260081008 704640685 121215840 943906536 175880388 904219644 185882188 523854544 727433684 768703499 213509917 862027855 276195459 125836503 284437498 821380665 872284662 894207900 331206240 151093609 327451400 553181928 825235205 721953302 170422953 839227369 6880101 395164556 90602789 972876243 283234993 611347721 327892481 129566613 290110162 525962700 267480428 527372512 118191900 918975601 160664171 75861823 959475002 153089833 528114367 306087120 876904184 365934559 68695174 663649768 266249300 599505985 590259976 85426805 395235801 322385492 431469939 261233450 835850056 477310650 767155203 664001886 216155473 659850712 226208872 27921559 433558980 798705730 306506091 866615842 793961482 962440075 725084551 36975208 539505700 283173114 759795640 637105508 731635301 631874211 889051951 321300183 543146645 627810045 213485866 41910141 580624878 123662001 179371801 412973791 109245088 683386003 863185826 239151170 576485889 731919880 109573272 636967071 19514681 958515341 628706796 52081693 967898241 106768429 769479050 985270788 872859256 802211872 50138573 251868684 706850826 80431305 765544057 278840972 711022813 542820242 160510276 289678944 245171317 277333049 696226580 456694190 487105442 269657815 354152946 201658455 680361463 922905057 717046845 880161574 170511198 699329290 48062007 704303066 300508545 448857284 853361786 230710138 732746009 198346080 964030237 812386507 604514286 885063702 991490166 636667225 822718080 992797769 220900921 135044531 894885674 939966497 838398655 90283312 380421587 282930460 400158390 614935669 92246041 468713934 193266060 866420860 874554085 763500660 689603982 320900971 645813159 345051793 963485968 330351645 283044410 739184270 323424904 765936507 449474948 205147964 277933877 598395849 720631957 420630226 463505009 764398110 354083668 974699779 249571106 287324020 499746745 599808446 237598932 990222259 294080250 218014411 342131625 936224230 370649816 607932120 326617816 596132583 47305243 104124557 626089678 985731713 810313273 701795577 955202805 525056696 765277612 621474816 701550963 367697673 905475849 323195492 994710977 307923050 68289419 407283844 269327675 229672834 304597524 80393270 838597763 642649632 175051160 969819130 306021257 622015602 143245996 829373882 170694551 236725757 465309977 809431546 386288106 628543847 453499490 215521387 344199921 446599383 536282272 426267086 832045936 620404509 233349482 148260819 658150998 386722545 459545393 613381379 496876135 939047700 825832415 282698166 628617082 903060480 305641430 323646945 413816565 496548884 473229535 468742514 721071701 413621039 407595413 2167359 581852051 176591203 440274698 466349493 982229833 493294740 529090826 866455504 155813393 139414796 336739839 700001323 225790813 96048033 235912272 473165786 781878636 21844734 998330150 916471202 186712895 310021354 387554047 270909864 276538332 699678898 238350308 668823754 911540179 242728071 699156910 87698358 887577186 411146204 117618799 887607614 59254795 682552441 256410399 4611578 809190899 130336420 918402874 197132558 948285486 928607254 701728206 28980404 398521798 340903202 891729110 955727947 197190897 450151739 699635233 730846182 339269116 299574711 564029762 31815057 264750354 590514493 932083099 261545475 333875244 708121139 65675003 753413329 75094514 818745197 278877077 520100225 933155414 904020519 997534420 521725115 596150228 862689723 674609170 690309452 320999176 33736615 928720634 671471429 683066072 996754023 535776236 120606074 508806915 374806941 272205396 310079771 836657674 41173723 210234003 825135725 363997620 521136606 965490200 327662107 690195469 112888298 716616106 737433307 634351310 994944398 258190553 655526863 390626174 921319038 487745553 775002189 241100282 257728385 513365023 527404977 497798517 328594162 995829125 332056050 155950067 792309816 963920518 994174368 182567976 413579011 815156694 508043372 969458202 660985354 396645688 533698584 12539409 569361204 877290839 766613467 998656041 728382189 5818670 771172349 793672041 335195562 562211208 105325084 536940504 476990728 166938258 614479777 445950109 237165041 122138487 866011135 65588063 733066633 862267439 289049175 437621276 905718647 809903716 628475783 723328911 969019333 737543041 153528477 566826802 462714647 574935857 862270441 400463249 882999638 990645176 630105447 817424507 810379845 193984495 55374975 973371482 67359972 614457419 136977831 713948514 253675379 917429052 16607140 491136217 523366468 39681952 559725993 98732528 144900162 281497818 730868846 419512753 192364409 439101212 55729940 146961744 399116253 984732789 534201915 650149549 275634103 673808258 785989058 490023884 996800730 248729300 739947879 378623269 582923957 438939195 817593496 814063647 657645120 101731611 972439683 479654022 514984520 977297697 192044053 468500323 841923286 443753951 578771326 18275247 719400680 947348266 32528269 690054677 853707657 677030091 253912543 691570657 349517127 408327974 487787956 160793137 857283899 572580673 67787156 278049981 534916423 856511758 152025867 976576269 505617585 537553640 847951727 839845967 325201221 18378941 615809743 450385396 156893382 702763650 186940203 277173483 986698660 954633142 409842118 191480155 309897067 902154596 765875591 839738493 315704303 412285068 892566787 945492625 753495750 755492719 547584499 35110612 458417879 925619519 852184769 879026466 282322415 267278589 391344828 669591768 500582917 372041663 225907520 513274212 174074434 309692952 678431257 358703190 931330306 540105805 42339581 237822001 639411248 414009466 205495165 843033653 72006430 176525272 739722856 873040592 518465836 727945565 699864785 91354014 705779062 78662993 164445290 969574421 709293247 926230173 350128389 662785034 530206668 112157439 346869249 275722228 267095905 675701976 341584305 801494100 816721534 840893520 55465635 425581314 530225333 338449163 521772808 474195054 418624492 67246191 319968112 946416596 950552391 299536231 709385664 477221078 684554058 147362173 580014603 792215341 249077251 270656453 295292790 838760290 456936750 973175398 142787946 450194996 408052342 795818583 910878452 543658944 885460152 143403976 170531926 870082388 199956937 313839531 264095392 406787731 978882449 355480054 605906496 582855829 906466822 365349450 695814460 792755959 955102909 707291398 745024558 356440842 795584707 804884156 6764460 959823354 536811022 115802784 929616999 868052124 967358265 267956091 288057713 194765386 914566806 464493142 427036990 151672293 899164123 557285745 36420008 308905557 739760692 522270122 736297074 796373776 650629520 242420319 663519899 899799114 969397387 976954572 865727984 889417769 44935943 337723634 354978357 445626681 200696051 55493349 439917294 872352981 829796354 591009957 557217096 992704036 738828553 797078156 625056799 88168458 716951637 784190823 355553135 787266458 737429272 23757660 546343765 768485438 131144901 642097185 913519009 319252995 387614227 29515784 890525189 175307669 85764052 958525627 675773450 947960453 164255282 199543409 62121246 296242777 390641755 823289301 670174525 495242866 891926670 885688039 71914386 811834158 806584741 811774266 857018037 93439620 740324229 79239918 695882189 729798053 36248077 373829620 207492611 501621877 504845014 403616126 8566951 729414181 885045385 707331215 131266965 684331486 46074190 180858173 914172381 51485475 497474199 870594630 463064659 569768894 888864746 106111588 616740646 514869207 507874581 734867044 311298003 880392470 261513947 670062318 857628764 288383197 951604279 611941679 297719307 660098983 764023378 860153398 343194272 705347513 243870694 49193890 557888511 272902707 79841687 767592812 81331696 690628257 924698673 345853513 346059521 161959393 641918148 600151608 805615666 176876720 50061799 537486242 824352675 454792136 591646611 774656848 884395439 344556529 177021130 836837971 638336601 938114245 481153770 214015754 996119985 725695770 784820565 965244781 440571986 847634146 65192827 562560165 462511274 160585288 901012587 37967445 264385647 728941312 211440839 895543111 877024445 411340832 976145788 239466900 680213476 438003612 693863464 898210626 9930663 805308919 852834345 617332880 218515214 263254652 180048605 170688160 680739898 219237353 856983225 107554253 425374399 278132830 90293082 503796303 106599869 477037142 472960981 773643053 923529226 421960061 179261106 749965147 633851187 187945596 842024883 109498022 958461404 64900756 290110154 728564637 694004222 127289871 922468664 807706004 79035433 736941098 185557627 760824772 167468822 790030238 443978764 363534389 702087086 893307611 905885312 755062345 611494785 91600179 664958229 789392102 998811157 130204062 487279375 428996587 147129679 917831089 472319744 128386940 414555900 618332576 159969689 840175581 737509966 245239600 631516219 758819074 520230394 84761571 540244634 112463651 751544163 205407344 142675701 658218322 991981877 268524003 213734042 648510026 388103920 840438966 764510469 31455974 570708001 45920888 348436664 150755614 334851172 554609887 136058181 676835114 312604779 204170955 8659714 125118145 249973692 62034507 695512700 869633351 376106779 655935010 301755541 455872136 887473156 478430197 552352989 884571644 596913940 851038656 27521152 838624228 4290521 551799908 973209786 854444668 488207105 528791056 979218137 564669692 860297495 571542974 422475070 585977830 288013171 708998151 564022473 761174472 569467501 636538862 703770658 533801322 126301183 891238921 920392427 790159419 809394546 977623764 377724511 973621569 743303001 441583931 759969151 783275602 480269020 795772539 33078215 278963169 91697580 849272326 835900714 599747414 863901247 996276810 414594321 805228629 448963418 946051018 419483116 829547335 778458936 901430929 27204191 955509094 126010452 972702651 599127854 414669497 503881626 438728574 877551490 179246485 302132831 618447958 232688858 879942776 422644703 512532137 145520110 764876103 723482848 60839588 346327516 126120832 723234638 227159551 52018707 124059536 3218020 317226036 190558837 993689313 18543027 207781562 623994398 9096366 865734749 775759371 333045952 531381839 328205818 337517266 136522308 553814533 883172775 428781483 508383115 557316971 297783343 308247050 268042913 64794789 644849850 855274274 649232035 850480251 958024420 95770330 278640201 48763981 612115892 678057921 841610251 784031651 776961533 193362541 400672100 17878771 834356024 383731645 822251570 651409794 414347064 133988621 868993812 276000717 541468508 196172212 626562927 447935052 695716018 322249637 68433177 356436027 245784046 871687770 305634569 169595633 13608354 706378610 955214775 176555584 912265083 808058010 117453591 134007855 735886267 300011470 984754884 309701596 73165132 838222687 127243373 555288614 467610571 896246936 173938543 881746854 440442993 736846429 696062260 595347421 886954549 684443782 618912828 40938830 863977942 980983941 886348583 409355579 329578509 357475302 84586893 506783997 753248144 207079066 464748053 364902381 914003025 334265071 503318186 399636445 929857193 86830003 978691218 181019030 167403801 425816221 251965905 673460136 362126082 875820053 739086848 282483656 810019241 975175148 862513251 815997442 712812444 292951620 351516699 587468186 759533429 264776383 878558897 887637199 393042338 369500341 787371756 586577926 428352948 763432612 259726735 287125997 309056270 978520966 32056452 503874592 4196176 244220186 878317420 341633807 314592518 97005586 476144544 852693117 367200916 192911254 678879836 311918425 975382963 661046922 604477384 428058957 311500961 358607742 792623580 730319562 126596466 142463783 419309931 735807573 48377040 873912296 361283683 594128025 183341069 927647442 574986180 868236605 806931096 894406610 285594983 132462101 179294347 549410744 709716607 891583759 221827261 795783369 687112182 747528348 204537093 108209494 932206749 313155595 221797746 972883941 347638952 140525542 379090810 969486513 297301305 118617451 360198509 565105465 137229533 283076043 999124066 125324705 772612533 268278734 677458393 869758352 802945205 549084279 541207390 635003673 665940895 119945621 583705433 298154672 472921969 311012397 270981798 822333376 606573629 746461862 973518282 607330686 298710805 140756125 303019800 756303789 491946377 821351591 444989297 564506530 847991092 630405472 799848065 470949723 760659942 708306107 799354517 956170556 122823070 322684085 392704487 834411011 863957159 497762050 856224309 979681475 674293594 411762551 940056848 592246349 547900918 939780512 779253167 424909095 49435448 386260950 252503757 628443337 430107136 878953319 441718783 170639790 523259048 822252173 787092105 541552732 679697982 439880541 187789751 599892405 260278127 178828732 755427392 555593803 327221118 176482845 131991180 431151167 909889890 796953766 516306225 723707435 633446897 176022488 10688281 28088468 530228883 568556331 992508349 432156364 21649568 339326200 125943295 841302767 898028944 530908130 21215437 154242111 908112659 995931915 171466153 909533388 104475548 867452436 738351604 722022290 719549683 593582788 673488995 367254493 211308040 259268481 75969917 609057574 830681768 268872166 646300695 900151110 378071651 183610805 176656363 642199026 156787134 456825874 301596768 218989217 707797332 963074124 524154966 580866124 976797892 808443240 920640466 560112639 865540386 57600494 191251452 571413986 964153560 665466212 854236638 616210680 47219424 59167234 94369563 281018027 691108103 30868368 417789191 283110704 255920197 900018654 384399049 70594204 975818496 224039788 497622728 635169412 880775106 211532599 286716019 870252891 447140717 576413081 698313106 40157856 272568744 391289196 988207224 320463134 380529192 282740702 389609368 570883307 101919148 454507428 143089847 277363503 213177204 188644558 534269088 503544428 608273505 63069654 347629923 68565750 639635776 374685158 548833610 343494524 710784657 680921907 311969780 973925603 944968902 675853491 625044800 324768443 895442030 506307508 32582166 860317200 905073295 571909351 302110270 514216738 553733331 353940397 734746053 351624852 82972923 399956502 867068810 541377482 954945680 260517134 88310700 240050624 246403788 528113464 785635377 939729043 384167343 316801118 571794790 732099868 210783036 226992378 634743064 666161368 197751763 667455580 400191611 553420836 35122659 295838485 208431523 813154161 704606102 637288443 443715157 185537041 594991915 593714135 965062370 608738499 943187911 152368438 517421084 578131553 867304196 68452000 721656303 751250324 977330648 891114032 513626186 331531776 604520968 559077442 17938792 725274797 271933506 477485901 655235072 692644098 215471140 487042216 831545297 12936736 470868048 972491359 670544942 964424727 260344820 397513133 727063140 889642881 495070048 787845197 751111788 708728512 282229409 188454587 898815918 791804703 42479693 898129105 884348435 777178795 730826757 747370958 493800377 988792226 352873899 161315122 826627229 508818195 177754925 210598996 898606568 915705178 711767214 3109326 734597039 429296162 963426250 169512502 193734394 815381136 172807307 942696593 51590378 347368570 784391535 367289659 455721636 503719580 86084858 924024163 992169960 382559842 625433769 688058707 779174026 955657133 428289817 672737115 163983418 50412034 582833589 593780167 133336895 941649074 670591141 603587693 964299361 303644462 922975051 952083114 215917520 381443062 623084418 207078026 19750007 541210118 824841520 694499761 574701926 882056683 908026446 763198424 561985508 291306728 767358204 926454909 118820501 560130660 696965449 402573323 322623723 154490451 367501921 657060224 126306539 916861837 575044155 983381619 371749007 949092460 564573298 419925910 169626622 882177499 702208945 872408428 365123546 187858640 237541349 375093382 247059576 268868903 819433179 529944399 80915635 844846479 829601916 243758768 66399145 471057580 713937797 77023995 254787272 412137130 451856193 218545619 537955489 758078438 308862392 367029200 306950060 387489472 413391797 884917861 975440044 556117194 867564471 986960362 986816227 900884928 741570194 670563137 656832337 23021269 150686685 174065171 642756335 944483290 852756722 936592890 870483231 635045453 937886479 591623926 478481729 517709052 463295038 104548153 465800712 385354158 512122171 923641442 957888945 541161912 520656942 699486811 925824628 562952221 692770714 367681011 690643240 765291006 554719701 585417054 886210201 983628378 343310139 950440467 971836946 420491996 792384736 327545538 443622126 934613554 757512874 475374593 513676476 554726650 828320542 583327072 994668373 675111913 307147770 65845579 366585872 179284835 341134838 176167920 708877695 920217008 435894993 718075517 277749206 419363278 227408410 284891560 270910335 679739041 149152188 718499440 452739682 6082956 497805955 366082651 645551651 191546900 216511668 77309826 583112636 958425447 9061488 140716139 599077531 590396633 232629481 438809045 720628532 324847392 964712799 829102024 497498247 178448273 667637067 830992146 589688099 853323078 949981982 100378424 259718818 282764433 653855395 467209428 663911511 133779397 751720070 407531514 301634284 864180408 35246532 68632253 396440135 613102075 139340870 906270164 473141744 724598495 267627929 123412001 910288048 58793206 630175967 609942610 120011717 851982737 99528900 783692263 997960499 986813311 655867725 780681386 113690041 440734358 347500631 261974267 724534205 353682727 286999761 595020149 635664305 458207985 764125179 22254996 760993738 479856351 851200528 813451739 647344842 48295115 605308835 325820114 858071520 896175482 370252378 227005418 56427290 692091999 635663742 836868265 286571107 799860143 189052711 659755877 801677335 220881571 281185712 367975068 686047766 795210944 387281454 432569366 538842199 622294282 233709085 174286658 36531628 284794108 385107049 298342274 414051503 927404616 783734323 132567565 496406103 669924653 361235196 328536376 427345851 448997214 408325140 872958059 780921987 136188609 777693434 962285023 811067030 516937816 648576682 195296205 350889518 527119407 788445068 439236424 295585629 5371896 656011261 141991420 152519813 316711091 193188177 708262818 531628122 68584892 400398828 827365671 666585801 766030765 696439864 541307203 167658032 833944825 393903840 397634573 472776122 929656938 332414460 674606632 112108955 156354569 515524255 980170420 119406499 837328285 419379704 388593609 763922639 486963600 331998006 873734469 138149028 723400194 761579332 176859853 904488849 398410577 981073697 92735025 4964550 984787846 611330758 486423605 373137401 555806039 640537633 300537539 606032670 483792463 699381867 711201512 853962677 462529489 950795695 226186359 801152341 815498623 11225582 994380816 522441884 332713870 557820803 94745087 276215772 939371248 566877208 991198458 625471283 226903942 462054202 644661559 593917870 22932060 113488493 60941547 705381420 158698123 345526087 414452409 289158512 680506011 206985792 340828789 712225796 343816252 53179676 356519564 763447240 333900623 394420275 946643183 647303344 388812842 242437048 949678303 342658528 345638703 612509007 738997556 713650846 996937405 383350153 461417480 203929811 903483489 952406671 936630306 303006859 349276380 713062404 759879484 850558783 253959371 745482851 288428456 473305289 713186691 921611922 677551883 158828519 509545105 420158143 867149453 230048576 990762651 208534689 971825483 880428176 513411115 197327764 215633071 989677870 178753493 83566688 993490061 813521843 414235628 158510249 417099800 980845281 123829011 284135717 949666897 967168721 461510353 447467825 253662435 15204721 235618486 300502564 289736995 376546235 387284521 157453934 38826553 804842098 306474623 324852909 757303962 303818573 991656507 684046645 887415374 917876353 319411516 630558829 553154194 618996771 801315143 234037433 600339170 912113205 662364761 781795331 80016 448585069 375222044 949222248 896293627 404979973 896857136 693297065 505968415 340570463 458451161 7547324 232796714 135896347 301125429 188633257 947422399 649880245 459247065 787855572 109450934 31402239 511359190 444011162 988004170 86268125 168445883 62992209 820837201 388209502 952346334 143373158 634226648 849243037 590269332 61238016 404329961 217297852 971578022 595979801 560875637 295073292 507542044 27483010 995095819 763807893 187516375 805311033 645189921 720502397 124384339 62486440 785650434 798042264 529906170 562278757 897711341 539002474 168613882 433707543 586827040 7879498 868522142 687475020 713488479 41007794 823713900 967581523 78201225 69987875 186043553 63542358 780394232 691714960 371737924 721256703 529651452 905648484 607531528 55010999 386243117 5595673 468964547 38857014 580889615 231632014 401150359 723962420 977824624 658741655 753365560 526981950 484635972 303839828 876182317 701031264 306668758 449210375 113073547 737799244 155962541 395183265 92418719 905725019 443639419 182887448 438913504 494648172 584541130 323595837 526646921 697397533 569891079 607634518 714826292 882197643 308733614 132286623 335768119 672250058 228188516 304265738 71056170 978815398 371354876 478694865 734115246 447681225 588480580 399459115 480821718 795692530 363393777 309073125 497519535 224565037 506501715 699870452 985277539 853738305 658323385 64907984 454332751 982921860 118050917 404505750 360488818 798460964 881109430 856258795 918653655 315788329 579161048 66038580 195427959 166771602 190308115 563054654 178728156 365725406 404168 905157808 963270662 82477660 561779733 410328058 272926248 57131714 361314938 142928801 520260871 188287595 455526586 193679892 270481970 193694786 895080294 44082615 620361715 308135485 814667948 483761438 168215607 347006899 96390211 252618525 924518990 494394963 582144331 354942572 497306782 754481447 413240197 180241937 605750514 704646585 666946763 964204331 970110100 974378013 356292785 926100166 704113850 60458492 346275425 550450615 260551557 129908498 995488598 670290990 421077562 768035155 800993569 585733919 168879073 176526110 777713435 761325669 487733653 929376260 829015615 737935951 131021621 535689572 353220995 578680042 790036060 744152403 262561691 677216569 808788928 176718399 372624115 927354935 377432539 725912941 357204082 227438677 813637961 727303468 577028003 148120521 59347035 514305838 679098086 993232837 325442790 477047467 333092779 907275014 952397061 424407442 226451278 230684843 367866487 311518378 163389285 301880576 58645259 776016118 871253283 416780015 443631059 364839219 336374766 658733438 548940196 708656218 810652393 733920508 159358959 480263178 498739106 919842369 708349861 697743994 381904151 403250061 733006888 65515056 784656810 798998615 330097500 164733340 803363187 340456110 218848982 47630681 626150677 317732918 754433695 417374270 556940994 235837331 890068689 397518648 460228954 93519204 368176931 836069418 794433080 663955793 756902598 384417766 447424939 377538168 595213204 545196239 718688737 339322081 236062984 332300505 843682618 487480520 896120248 11347706 914033629 463184074 36895869 884906600 317739056 745239678 348334688 366179370 92722448 179076548 490409428 165675279 687701813 862648595 647082881 294107610 955499253 134877286 97548128 41492443 679642342 243106653 90021237 652134839 853159924 996724632 624107061 950928659 290679342 419280548 987453952 836260891 611527812 554068377 549281923 493213365 373843284 960339758 165892629 114450329 793741083 831480404 885905594 479438338 703875392 665186462 871321001 286560020 558002263 982844052 515890180 956267395 169670109 307089346 671615760 542738257 191070024 334158986 607463079 818340678 579220755 736321095 194464656 603429294 985812423 298252290 397895129 87387551 396284720 833920664 998241190 96164340 70359014 500215883 377332248 212659795 966828057 444966857 403926641 805216803 496590519 910885696 714634421 768679547 668366765 289287755 811614549 368510961 36840861 125779332 349977783 531255884 704309864 369329235 538572481 421663979 755964595 763642012 6067099 767839995 592613431 71139770 873725821 570106343 533821389 611581352 827637264 363805855 238957688 866552600 978513625 554839222 487945846 982365097 309311296 450180824 435926756 720619548 295180719 428578164 229257701 962296327 171668647 38250549 200095846 612741692 992684130 583957348 641840075 890631971 890270543 203812342 183547185 677376819 733800596 92396413 771575555 569596624 909366277 192992156 386486007 121046042 251633652 7379929 264196450 809148197 127000882 648772310 899244706 89977294 206224717 629546794 850883004 404055620 19129882 791208371 819161645 804389200 543454173 500950568 529448192 612693229 311426797 894319297 407274943 262702371 810939983 692315209 864129153 573218227 346506719 997799711 577257107 738592574 385119837 560348493 462601760 229288315 292747800 359053443 300691577 446533296 590973573 809249166 349574642 272101639 495175649 151803363 360699380 523182291 964829368 6322052 864117309 195426988 290244012 628434322 873279393 429584831 18993636 951003270 364668775 714751900 405168640 611707283 910943945 416253424 27597359 451509138 986140814 407778660 306454525 291601995 260718780 541809278 217245927 650812647 31334778 205985384 185893373 169711478 355864727 534707902 633024055 248289351 389629512 967966629 335357344 211388165 856326604 84737304 876028584 216906380 817395246 23881413 844816118 38408659 15128575 79988911 686662252 862481003 425732327 314495878 218858038 67732388 857410925 310502630 764595870 828950604 335929204 928281664 751908211 492525144 799903858 526223520 957039643 386902012 938949974 12960488 807581572 465036222 969971832 482161502 878904572 771634046 182933638 771413279 828317133 512875169 873497073 726164961 608553923 479407620 465050276 318010328 716732537 340965449 580425416 234049987 148000354 42916991 323134118 533188261 768741100 270505915 19815510 212982315 97208209 572558723 289914343 670840450 275194950 576880113 42486835 445684248 756057238 686433753 580804228 818022842 833708966 296483163 870751388 657880460 343803170 1165492 876330633 192169984 298162754 612947219 288085099 697068031 759328499 266081162 244246668 214002368 734484187 573771379 576119587 787378684 798590708 408287841 961755212 967735865 635107732 156873530 743802197 362378271 374012509 877274846 376900842 419305302 993866571 553681212 903391370 317160730 637481334 641091914 384468435 380720028 351529158 84322984 729237221 254153002 139280197 935482277 522687960 457382751 128731724 658930534 814711603 304632971 922006466 127761032 872726668 147806031 242241534 311857094 865683658 583522376 46377748 161026717 26308216 700812879 588810297 861570343 652068741 42326875 372878411 681001144 456300240 208845957 675248644 53241609 15613940 196657970 557235531 943384220 736743775 804603298 426557020 924502961 440969070 244575642 100887573 391467995 643264224 91138342 765202480 249349726 566448597 837661477 159834828 298738280 17534924 851456222 56474658 554626612 56289526 579754370 276844338 495132624 787639413 576548064 289921998 345444155 180974948 342953352 923823235 583712106 438730127 49540201 642011164 988796923 490666833 822563365 771532390 75106694 100421740 33594267 791398636 195199922 783107458 903869384 363059503 732461388 571531796 129815095 106180731 392941964 51302958 912791528 81828038 922493477 500101427 232260728 63752607 882904864 585296378 4725407 560968803 767661299 990289018 413103392 972575526 483236228 28064873 43926711 113768473 313271852 164951256 515831221 525477962 547875800 803849833 244418893 159782781 800273670 723468127 388226593 551320941 646279006 573915963 500618653 190626815 23225937 90630393 881893835 230232665 702873451 200864043 713571885 937506680 133744010 384440633 636868485 424913317 120939902 272365465 330238410 805247301 496373991 781672500 816842597 392423758 895305629 363263035 818010576 800287665 257736160 62178888 367355230 537228549 290595081 351452848 838979931 110816987 418230617 473656111 245309641 691374556 889464327 385087085 296233426 332854235 63664906 271025261 718131095 717123091 930265074 455175645 882324952 305204387 565104745 818717680 965947083 388692760 189622593 611284211 767357352 700227865 775860597 301013421 125760236 981271724 873376672 79167947 679684454 531869672 233824748 899467242 88708871 456203039 196403116 367864376 48453739 379229918 28576262 636723983 251861362 172755294 581203708 103487644 106628354 679336661 454262909 247672338 128419247 887426169 156680256 521597979 137616138 869101835 499207494 717138292 150842456 711999700 365145078 862105643 458877722 1167400 401684980 926746440 759585434 956666019 572995045 481552829 8346398 990711900 899196405 597238137 807295255 221050052 200795910 693879450 357641834 549219372 730922071 427321176 110660997 355984622 572153700 768088596 710427331 574756738 170998038 740639222 756049861 687880829 917656095 310741352 826998376 850372254 716693479 849643519 156688426 848963325 872808487 320443792 115466014 700978109 394826976 5486862 857949537 826547633 853589194 294321789 994211655 618439545 495847421 787819030 723781249 77996818 861330714 738850999 559402596 475023304 492358373 578711724 264938787 743157146 403602405 473516928 486820875 631768150 776009026 94924787 894389603 580552739 790449085 349165644 462788749 412770890 650250956 347074598 93631164 890246951 817847478 309642902 93529403 215923326 148852003 746623788 52607351 541277778 153328321 631699996 986690004 537424784 494594378 48117692 637587386 954397249 544960380 922399576 984928528 304928932 709700366 210673901 731017482 191214983 655350790 411844894 971478519 551849038 593404901 314445379 11092366 591737168 285421779 275628883 446639305 312644468 79178355 409965288 659674478 159817307 697268521 314611277 541460350 963468625 566062602 155826601 80461651 397610345 69265599 787407301 471470545 689686891 687449387 142551346 746369545 467968293 657712657 684193369 415982023 367071328 666520135 993853372 658954719 533780156 230959818 419264976 673211356 761147105 134611315 894361042 68202006 875300876 29764704 512518367 481949197 791870150 340318426 175406170 224199329 912235806 355438491 768368026 502081748 894149689 794379324 193269877 152960520 707046194 550232958 307698422 436256368 127733822 134013246 988727530 149700888 202869962 476604641 530285847 702167600 17658880 703488066 960171849 648135225 746389874 646654755 792420879 522560272 426747084 489179779 616908315 692035198 306940629 132640613 909654575 685711513 831466388 318715219 960273788 572017049 847589895 881964719 420083848 463939944 664128766 781239175 983495356 958777476 101267292 425955759 223760937 246819476 341855896 594960133 617254113 598705727 34317107 140949808 345627159 484893357 139492873 847822963 51451464 929922587 423567255 394234784 606255295 221444028 577997663 359059123 664621954 273676317 31909862 285873366 770872356 25237036 260595589 164902104 576876837 11603129 90723755 838005549 883644400 389236747 52293078 228916950 11759601 109390165 388687385 179167796 575672749 175658266 422116522 284501647 560301553 326964421 500781239 462045280 558865802 717546616 871282055 206172093 72513017 709988440 720665185 41887392 327540578 197003918 365663164 190690797 782230999 537795888 686054100 11264187 487254859 927621215 36582975 738084757 903864959 651929350 944113407 986258663 441706432 668132370 79979463 143631096 589550514 200119642 169196243 467859136 393129156 378312734 914303070 65713345 107542786 123078370 215336104 724679995 169494908 401738378 352874317 512044251 250770606 596358550 896601112 829595756 408220794 999959607 589806801 184323767 522529040 171968530 234138238 270121506 79801186 256384864 683967823 330789657 436219577 261926508 988487247 159636923 637216958 189682132 30160425 427245083 896700556 511621276 675921920 340955237 196618579 669773826 892993266 137925827 35245440 110299129 658945148 830877766 604007289 93994481 474285025 724921879 541098336 3645514 684770911 814831810 183640667 17687207 397133771 351485147 787627003 565962223 893213972 982164501 946093668 38943467 102853672 539803923 13741968 494247186 277488169 580117458 314512841 326821446 341657486 598250308 439988330 105558912 840008891 306951819 151399210 647232071 722425422 662195915 413237092 951012426 70257937 983778363 860683518 707294544 712537322 592089073 414543745 797034745 810984084 227782014 926413855 455739138 936891241 433299243 893847658 495078736 662132486 612451819 323942837 185738465 87419001 88569782 29888704 395734285 887851947 43873263 240401791 878058533 669486982 383238904 480169308 641612669 499346327 2936326 914771074 798676541 201561662 819025004 777152641 957349641 512756098 958659424 395373742 182581013 743720811 653362594 481297631 561307553 578317791 713950849 161293446 629069428 152287542 364844546 223312505 596698311 845872521 379750740 845615786 721206461 993702576 706579682 675336895 422934306 496293829 660831238 45980188 643893154 753678243 705206773 268413790 378365884 129436017 823899040 948226837 687781792 498435893 217684341 899975111 386378883 507140490 418765402 884084580 790405059 370350290 537309108 27575323 979457320 914787459 696586401 478535240 362886091 129270994 726887068 278339538 601139090 544665686 963999857 166847477 348608681 1044060 466685739 336735654 91175015 333922913 815848914 796819884 392166884 864647743 110648211 344229872 91198259 792649209 962257787 214427352 410634518 871362595 790200243 847939640 369779296 398173191 728331731 322213182 999752035 409973438 195253957 332550783 611489364 85260395 996434239 642140058 195324407 456569397 630425049 76254840 19621363 825972516 546123184 818780628 249897716 990038258 228357607 47622708 950317795 202318730 200904213 441175582 697601030 443825130 969850662 701815418 99377158 610307794 171969332 125847310 637290563 415211354 884834562 29075661 834081829 360193198 9445481 446023528 764581840 26783799 856580169 313593919 310234187 374820415 804317175 693400566 886659938 53023355 499058962 974567329 452462010 481085881 815190837 721497896 939643752 671039380 534375206 485863153 353326529 192455729 946787462 338389729 75251597 84405540 507098614 431458813 925935639 803329422 319370637 953039593 115379402 655562992 367077811 589637113 21192091 515212034 76698227 231341965 286070738 334893953 712484725 427988793 458774535 307199122 944736291 857462054 73826657 843185651 406159100 202373243 438112196 38142272 263057293 765495049 292161407 766767279 588173572 626111792 597311117 467342924 613010506 185695974 621267061 364709239 821595199 163181839 940461985 852109890 48672308 560481877 754390458 172532900 515587207 152118913 549278972 413793702 93565413 368602573 739046443 42238607 431943100 461533905 958631061 221699216 843227615 310380363 941878962 758169705 359771935 734248316 368052109 895592277 231363604 318719960 937284002 327465385 125063346 893135029 910636426 766179352 310466894 537314838 130347202 208554426 869099347 461219448 414550276 91367175 818625916 985708723 957060068 604330786 584709156 921654455 18759510 278458956 753420519 770711030 60959353 288866899 848574063 684159401 984400174 365014277 778463650 779191258 14631032 496833331 732796572 915550661 92065968 769676305 478021831 402294503 852067793 658682320 189367531 520574497 600721009 958291778 661739919 181523937 238778657 177814570 693017691 960796975 711510526 324374697 668782383 275901546 248756100 212303387 272977200 100296732 734216511 188116549 430915930 956219325 590941786 72359444 893745420 378361855 203485362 539532485 231589196 954142468 561362372 434893730 506520504 768689750 378374666 227734378 859131478 650008412 655083176 660581334 228338953 49353389 208533924 666448004 494463029 797697883 888672594 369374005 748368402 429703838 853602609 461853446 543094014 442089140 956211696 974116726 530909566 99375487 973798320 687340152 952852193 954484807 313260617 156231020 295988418 979018813 559818375 571808530 839963025 795458043 959162990 75407148 422446979 823069189 102676244 549594668 231914964 717479796 991793895 154619536 507900460 76050633 903516298 952546112 207652846 275325744 595538550 34725004 143155952 586490636 284309340 393622446 523971413 631672643 141766599 201645782 202342344 327219738 393091442 581012726 608700223 163105307 794688532 199597500 522715183 586345548 24367545 552017459 523508848 94657166 21018052 129863111 783654468 252021955 720496624 384711545 362494119 23060035 246654383 723255293 796884229 461957202 346138653 955505424 887757677 650455838 955724623 904305425 778313736 808453751 933949121 111543409 488153198 576545743 832269138 888540346 459467109 181894859 829713890 598414219 392711540 786468610 285873374 556554328 507765532 77091344 278178152 864034476 53725177 267059558 179153823 524935077 17347355 612025517 402017623 643105954 844960851 461510505 261967309 602715818 156802662 820839281 246092148 202524667 210244690 7404531 702681858 571873557 454587617 981257515 407014417 670883313 588734648 717025028 203584306 618482316 939851610 240730338 591860612 333406322 215005564 557827735 312348435 408263212 372045475 57858087 50400344 590720885 104279031 674752619 713686525 310147833 953294557 22393591 797106856 175401096 556206169 335443451 879462760 35479350 89991957 10920297 214258150 898106946 905356153 31291105 220521708 92388293 874553494 810127245 899728416 23841065 528763948 428436546 302768306 826421058 253852681 273070728 918031863 897456336 820912403 66043275 298080080 293807645 231330259 965514356 511191145 129833112 655172822 746940377 930867798 394889755 109683525 289462576 118230104 43347151 418850173 518526320 361926379 830426955 367050930 470360900 865445611 157373822 215896246 213484381 893024178 88069096 867777795 766552750 449468042 461216519 222055239 374371623 635604554 599350239 431860170 652789314 403024124 359733691 706455947 278390944 928358931 39296310 104477370 615254769 621736529 480971595 911267890 156412820 361847130 632538252 411932186 943220548 518923605 45271085 179455689 299131513 786013787 404794449 680761717 483452192 512082306 715251896 664880003 925072375 247641038 791816665 137921782 568860549 595556870 269977823 362304949 873366094 798449086 516393280 647971031 289040513 492054997 395981082 786214851 278638336 991328327 434937818 203172269 476101147 719569651 49804675 555623383 169012825 10796550 16378425 752113888 49140368 740871757 695138673 915020444 405969848 767570972 765407173 198121219 596376781 9426550 905000204 91680929 622484660 92252782 508612730 753109973 97214788 589861631 496516798 338414205 635040434 451563681 932878035 220665418 641285808 435759820 42813 417851117 264578415 631728796 916695461 274444384 937597170 472606820 497555041 559467586 240904732 401150990 784343751 989170827 224157632 692247020 154221804 609851955 768059060 288176234 628400884 893299780 486874053 960801584 131537730 552378934 224891647 500053216 702307778 343816956 478818598 731643350 465628115 4434894 169462237 645237937 459603727 924340531 177129182 207265548 471003477 675682655 826977458 385807709 492155480 930845832 199997759 428552306 601800558 249027366 10586109 354207895 710521446 219372532 778357153 737164127 924002912 404257754 442540047 485975680 239893726 666933835 913176107 948220538 689266967 648027277 766479463 211563812 749455543 952713557 73430245 10045842 653761718 275920240 77801561 954484506 963273002 426490079 339514975 278304714 925393823 278912580 679650317 810169087 804004646 586443622 956408050 207780679 425221320 104678155 704596977 234487759 291148852 69121233 736029751 704800959 471992061 536311368 285674787 882434638 619869103 32350640 341065750 330217152 494815771 653642611 427062778 465800059 361425158 674039107 354423249 308274228 189702220 844574041 945972195 867422079 632875026 354153121 952471975 427537219 153332743 798136317 485701488 586273587 113646453 688369360 527254067 422241932 809903184 585752194 624826674 198956879 718465205 395870678 987845345 468596593 846437955 97050070 477016629 666957640 98029261 186801244 228732783 577932909 746376068 304786498 910557600 234567294 35348474 4974573 569743132 313650825 895814557 658711949 258258264 513100276 509308830 643895162 266873959 526417846 990555237 155386946 840681348 111568223 780209721 58689534 501769928 485837590 927553978 384642562 568340473 937826107 464857054 605598391 306254685 326450200 887235588 816795584 223597236 712086701 442115386 527590905 965004689 973217307 748786357 609397558 568476236 949218785 209462691 211989806 195788814 503932506 507626392 245027905 96575731 182573396 452404986 698035529 755659385 948103324 427791972 384518115 964027798 285983870 707798098 507763937 197542644 22929178 985324823 474206996 423438167 807798014 473003291 944263849 233974024 384118504 298709945 269204435 301569466 984327170 893466721 863024002 462304145 24363087 598816138 952376165 15266118 581836875 519328084 412303809 241123930 173437644 531914326 571129660 311385230 385854736 154947646 906319344 253214140 268926069 199843038 771130424 50100764 117697479 238501397 426721360 605697545 928053791 25793163 36990334 974275286 550218858 906266438 861782808 846410669 189991361 720624399 536921358 186398774 644819685 748609991 303138048 55631508 614597139 368280678 86667387 288210811 953218923 194339519 412523205 976026261 114098910 780893376 726184421 292597475 995080160 864787826 17972371 312572464 144198617 861718458 23285006 329432760 37329616 418458458 395826522 544173014 369253748 807649949 756052846 392544718 182449219 660472821 580105356 195089447 394342204 427972321 617159006 219816418 187293028 664335359 117828851 700123066 331294338 794339635 903106890 50003677 876325434 547356835 112492054 289979116 164505539 872439954 392962085 895978160 67780974 86188919 452764194 882011813 695634298 347218580 717025850 544215032 609808405 388096649 232991877 827344933 278208492 792737390 439459075 416687236 629408863 721532626 248244626 152715467 262309639 286808316 284318738 644017184 591999685 673262462 427428035 369483680 922287789 566631958 437766444 365551736 510200247 805948119 894031887 119817594 7001452 204194624 69492342 640363173 794664136 798997234 646012250 238146920 729038923 87670618 909797809 840763462 27663155 563268537 382646475 668599346 973138247 292841530 786781127 961539574 706354340 793735068 584486014 913670013 131507255 669125513 295307529 769933546 549527841 795965800 810466959 400954731 697405626 164137241 616286802 975210308 375096760 444552090 236835058 985830211 587011151 717280850 46711685 286758092 344691471 55561547 203811959 392731828 7899141 685512806 404836249 242736910 442614383 650457414 517395511 880269368 900772072 871523504 225852987 924592903 679851547 151896930 835370999 933391062 454110914 450096283 103210945 463081493 205604714 710223182 860612158 368787743 312212128 224255914 854485618 854582261 382236471 920750215 30398961 551397543 465723959 342666365 562572 989445807 350883978 619390808 315746417 552040594 442799539 513461652 527914870 808827728 502739251 403540804 500888983 599776168 683267248 684683591 873733325 982184641 132163231 658881673 910767826 675800 950239384 702876589 328573499 895434900 261070753 537097433 853758352 951841328 9431452 393218518 299971061 325826537 25424695 343734743 915002608 629861187 223255776 674777387 724640277 22181979 991955697 793266488 437212176 11920987 225159527 259205705 852359106 721288505 742090097 445525960 472849668 897628422 370940848 323759991 987741460 305666869 11578876 694382026 252354340 516882636 7005002 221314575 386120601 723594068 585887769 436421114 133961166 865051913 278236227 437852311 109213888 584885783 799192580 794289862 343756530 413913362 816530303 148709451 446693380 323057289 825307412 681183499 561458771 370392155 17208644 248593219 459715550 584665891 563331722 219597973 718784187 600789695 449851955 267935784 370024414 785697754 584845698 451963760 166367996 845002618 847143508 381532765 250220031 417479954 73633200 308435884 875966953 478414524 378092717 65915212 712890016 652849026 705218231 426873326 149616256 859107696 904460144 619969591 829473143 474021938 299989187 977602824 29443969 309003020 669839312 695521268 960359084 702431382 803135101 185160263 297733663 771333885 195967832 43552997 311866765 435790472 222071424 546987519 195068995 123148485 435231537 641560548 843498912 748352064 454091308 514962755 61270593 835563519 730063807 684953818 211364174 916116028 572927359 957176729 72379830 357039395 65310938 986342409 178741102 544540419 356782988 157990503 593326764 576638466 544390076 462430688 653766492 955906593 765860722 761504874 550467314 230048430 680233318 435346048 95116557 309169356 38065517 146651441 302596869 72447364 913482668 562398810 140591038 566347242 960803190 699774494 869931883 522219363 630596553 842882364 596399825 908310867 78463291 682999066 234019099 242390292 18417626 592336802 50440831 732241222 717487041 555978179 856154170 498644054 893249677 896608199 693966833 444444197 295295668 640249282 461446777 20140524 280041481 797513366 231880139 309138974 571604172 851541644 659486349 178603766 464744793 720812648 502071784 201105177 720841637 72629119 458168646 641540063 247316478 585257240 31395292 873281847 356178988 817840846 113117832 692069580 391379363 209308308 121158175 993006266 440065174 745940446 984948618 475049437 102886897 53073254 880855866 142089223 750342805 672609869 640512009 570751443 304173738 27975409 269657629 65044500 685232424 613606604 1729168 29277263 875396063 638036079 773714447 497160433 565613054 398932497 509700615 468031495 466367576 146005427 502225293 62062395 964169829 910995640 609527542 322368099 211233897 311794482 982479134 869180751 876212961 977938702 709455531 522334161 95170109 954720893 185244729 37347047 116713207 708079326 976236150 246843115 241650114 177627543 699233479 255917850 360487545 394258145 718043522 537889972 987052718 350290401 714845188 935957723 541472102 411004032 229430808 245601312 87384339 427339386 282132147 101623692 640045091 830590232 906934602 188047189 37434745 55006615 127699524 555923834 728343496 586322092 287252762 402454917 111918868 35892965 212608774 645610140 934307439 529905343 586602577 720588794 361232162 629579810 34344287 81406209 683693985 74612855 44739227 794226956 394785182 929632417 740673942 939240376 969201216 566216265 384497805 309607495 581092166 6412112 723246619 519583029 216968232 380897076 952772994 184126597 112314760 992849940 915060562 342246836 106241182 482993516 275274950 175669707 251646100 303100822 23313370 37699409 922383481 432706049 716210106 293464270 306711673 602658001 265997482 904200269 505050217 703930915 74840550 732963446 639602067 398006315 875071227 335196522 326448782 746577871 663584294 926937303 313674403 96323101 543931302 874240469 207579348 497655737 126936355 479760816 17605228 675903729 913004957 888518197 527904251 871247846 392717999 836212114 263365804 893891551 241130387 763274150 776536793 35306093 936661627 931197003 97367492 743331646 330591462 913014504 478025339 155342960 66408810 803190429 376480116 412972563 138937279 162971846 77082420 385439925 979377808 592267971 339079170 853770253 188988909 156531307 803420829 724087842 681950806 637207853 274339779 533714913 808813932 600596130 118165176 594947344 312643760 355221544 642313115 824348278 693130072 40971666 822916093 510243272 864301513 178357628 699435528 585942229 878353338 553373497 974254197 327876898 827904883 930464366 448050806 641255561 992119923 165798415 628278073 107789723 881626546 12145865 548527657 187069997 888422514 755438356 248086039 122902763 601037305 427077152 717976091 848810189 25487075 498254363 154349854 623099695 371445908 137363485 975805735 321972982 20239701 812667074 928371690 79993020 468128287 700275515 280051697 102150548 156632965 102561417 947275762 995313684 170699012 462078096 716138667 702124414 817989047 70590214 893115189 35571560 72158476 563024218 618944396 452400077 962067747 762775197 771483090 176582373 163624128 322824767 675717163 692980196 553217988 336072763 500724272 38868152 110718089 525073073 829674517 711064549 191684656 71742159 701883273 192448813 900866707 650216719 225954399 154952013 870856683 434242443 32598678 188429619 782444227 405021981 797796290 839318594 577806637 203725180 365134323 922234424 576318280 872250535 882224347 851896396 911606923 668332192 89752338 553479809 730177119 110766688 619585861 725581086 827690309 244419379 272163037 728337344 581618711 201133624 180311468 201910523 948715919 459240772 8911317 453745571 151093480 592668108 489776560 524866416 451814146 552701671 949211592 21875703 283383209 770232910 198919447 983706655 139341605 901647531 429942911 66384197 857784329 402230371 770676181 225731415 73793311 229492166 699443106 26818520 503531713 914572077 373593477 178526958 419995305 778381896 339852738 365297569 976919181 54782669 602150559 732197738 844372930 978759267 710873976 655486319 869878235 477193663 513359557 448337996 343013081 82980382 327446339 464925119 295767813 858836140 597154751 727690736 983515789 147949782 913906888 416043167 523022242 293218896 3316899 795950300 637323749 920088440 570802495 415588864 626309465 433314183 352439674 950555197 680144578 412214945 969129583 760595941 681209847 251523301 719299933 793144707 558673788 984514893 523537569 103436788 293765171 325690592 116331406 604016428 813091789 285605021 934704345 606377975 604636897 824303278 951337310 354851055 489273534 357366274 395054879 9787095 6298581 966389356 949884194 111879133 600429076 843743722 138210764 994129714 483314119 872443710 183135655 741915944 710601274 785473336 194170193 503770300 944671940 536489771 194538238 210135802 293529264 663496943 624406396 417997369 67412755 784842205 659576259 224996319 86834029 338255364 687520433 148750969 151762978 496155218 208472310 703456555 250728887 544167516 773846714 667439270 42848603 945829038 972759728 735785189 46325139 665198546 97499563 415144943 460005990 173016121 611897214 522568718 4714008 73382827 824103986 35353521 140283224 352797286 926985761 844761402 484175132 730238467 314605143 470558052 181583839 914666142 774942440 107099591 349544514 882622447 403084849 158185934 695686871 163320129 971621496 847761089 601614524 569874874 354372050 14129370 804583589 227309191 345482478 89550578 47548743 603525382 372403372 490104883 600255883 340587955 765871727 715931545 36308143 858309075 889096715 615608356 244848761 469751608 404417435 37430536 672362684 206757405 647574591 618774065 250422024 222153707 661838908 928604612 433756340 166214943 394841565 510561770 984411444 482186912 515715902 99322794 51653009 687514484 925730876 725284944 280628853 396685788 189303885 588931552 875845028 552706022 838839184 813955446 491745259 708910348 834960999 999073471 332257728 928654059 687805575 263059189 441098578 271689233 852542012 333037313 219663486 995542192 38487079 388826976 358393749 779343316 761318242 799824658 822731009 706980999 45860129 968934915 414732099 130351806 767792299 135857455 839981057 302330406 580893074 606640732 352431040 599245963 972584712 133131799 48595588 88575714 396776742 239555604 849561619 327457515 424254103 290320280 257878610 423883664 885354022 197557780 493766658 383133393 770798487 858974408 508981654 928085710 151876151 842503138 99808266 373081685 522805891 867783299 666860975 212342100 534054823 243848818 995610570 367923324 151174454 701207747 527410650 48499939 814452621 333442362 249543016 585692855 164466148 731230657 781681936 840630972 33688848 240546222 863098309 247455454 2607528 366145335 851690060 671031698 853622360 177998422 423799443 740958704 645794309 452522521 331895376 206507396 108547094 123137940 722127393 194217192 704936919 958710768 574829988 521481515 904029212 826342094 23386041 845902972 26129871 752736497 761341697 74663246 978263069 310827960 274386568 738051508 40480581 910867658 669094793 921298074 397386337 488393374 935676545 341138210 224731827 92582103 316880660 625478833 694503646 246424379 867612576 515980027 863720298 706010084 528711660 428279182 61814549 241689258 787482431 209437838 453122033 610589409 889841383 53757438 802422779 66266970 481342152 210424912 480072198 441687711 869847812 131201215 528102348 284465851 58489695 517138654 583670689 103764943 589823404 178017998 562869828 98278845 898629489 124364349 375919299 948972677 813966471 441019676 415774903 256818743 623238088 712136273 471966941 80476792 217825054 148624919 865782619 541751933 995029699 115302668 809993489 971440651 767386073 797976070 582189854 216775673 778928632 923384052 558991520 740770430 404333775 310093873 48711285 877738836 728334376 788017609 819133497 984306148 88048938 457265397 491925243 941180612 655313467 690199139 497501846 462692196 59961485 988551405 766827291 300922565 844893096 710898110 699516411 900149208 297249427 412897703 912451971 527162751 250818828 958286171 975690666 758856231 234251457 967109877 847978482 702244221 907036025 787444157 481199882 844055565 399330504 430099220 629006101 324326884 318335249 713081567 659971414 848423850 338134497 13457137 922434640 391966611 135220578 423626643 531316007 541883405 801032032 618599942 265966679 70091008 434666748 830360968 645604553 444525677 988979680 939733129 331751027 328244982 890281477 930346385 670612075 555165345 134445793 922660419 453376383 793702171 613114665 629070217 563506866 762260956 896078997 247013208 139441471 879352234 691621337 729501505 789810275 862974681 964357654 386336790 575061112 405321680 575129964 588915960 244307122 171823280 588141368 596486118 513944519 523979907 339097571 801466529 865545955 499954871 462556794 556448175 980596285 783261540 39460616 693908292 918265770 226638679 605844852 858549876 853230554 960369862 906208958 829186417 40012904 722363001 128402048 717459015 734314697 625072873 598620673 32099104 462987877 369503337 569550720 413625556 437097091 490922011 389210323 333328122 461772274 363112289 692405561 615892758 79889731 345430443 59846399 388355092 906971998 835135780 899598115 426092945 531380640 308047599 630203851 698848785 477147658 544669962 300385516 874385637 363801509 501948384 870591917 538385835 988686839 940567665 691597193 475054919 89323818 319086114 980922720 724688752 391418357 30786491 787718104 209383689 310083 122129220 320102976 396176152 262339130 759236186 515708388 32791790 540051391 771881198 656624162 156030985 529867533 856044147 866733965 271155464 557029848 334969798 738083989 558005347 407036594 55982292 822569072 356160620 891712272 999548706 970743551 149324239 783298630 390051397 19455461 20106728 336771196 890366212 823760043 316561005 224478813 821119191 974923326 625892967 257812949 835556737 29117367 589438871 22778876 976681745 549826263 982858290 652204041 639245933 778483034 11167815 847225 908265155 117505347 171027780 123338896 652669339 671516995 603055837 977631947 241117080 651729228 94696985 605778969 957880457 63253865 332542509 559998762 132507645 147307808 617350107 554511358 962910569 82677040 430860944 612485880 561891367 815073427 889712700 980280653 615788810 298612757 452289186 698896942 767113952 694006642 538008638 754336226 527167710 702127581 603530903 168154774 160393862 730391974 499403378 872178501 378708291 133009039 261714646 858487853 859380090 176243635 661437878 833552662 835922299 102639066 18144989 67699234 56875432 952342923 604099372 981321399 777626574 177168038 284265187 573507250 602171536 970083485 54012252 152266359 237507597 346897157 127546303 447042470 312340831 883327994 758704983 293602338 47084297 269031166 809680556 485676554 670584241 719769861 297685 228538160 301210404 753876615 385908455 944097172 744342481 751479460 979395722 506844212 537778787 912830002 797319156 396403632 563378661 581770828 506532918 447460447 378547800 180080146 89499147 631341478 908659151 954787001 266425009 340717227 8956663 405009488 577883498 827849091 428115257 368422021 748469540 879452121 596884735 111103643 251588776 701028813 217316955 561369888 181533721 973379157 117763983 81859240 478908017 141129531 107550434 952597238 684188369 361262174 121192080 101167117 678222188 680460345 909314302 291740122 444310236 903990076 525573324 760791998 757638486 532952742 85874757 880767357 979763158 366594081 409275677 437107547 301487409 777098874 598413308 972716789 56343558 71304286 470017055 205036297 263221654 391790972 372159468 622198793 273616873 442404490 897838071 806097024 236411686 933647494 103565194 724933417 885794543 565420398 880627911 81411204 126157107 441190096 373400688 101581123 205412968 148176006 800238490 472309382 643477171 43066042 242480511 540542244 100084700 998730547 933157875 300401970 948962429 258090257 733869070 844844112 696926098 632947439 783044979 538109682 740919078 521929185 861555130 498970784 935531339 837419098 930950467 85002471 515484820 764783603 970964310 748219829 39643565 53327012 107133303 475487350 123958784 472483947 922377010 21949545 119259526 713133526 799329209 445380881 323626253 700771567 25762236 760882517 625161149 175997886 945877161 260853947 803481759 942769646 721084793 962268142 479731811 265367846 692643723 951388376 789629652 24313235 769820340 245060900 451156713 346846073 751402131 975801405 443645498 307481221 816716820 890218020 799739149 830662394 549747442 107781149 807426455 539997009 780501203 325963265 192048800 652697213 715289684 154095986 589242463 623534758 502283590 691080946 782246159 885215224 342468577 125323667 987517637 313964969 808013153 4960276 483475030 433266337 789949962 155598787 86412712 112253272 133806268 84962670 429002809 476172721 287853137 951192135 535823155 612758278 413995876 876147413 226532985 180317390 31289090 566369009 436156284 809002742 455085254 632554066 865520766 677842639 541867607 829682451 67992369 988926973 284793117 634917136 338540356 342342851 75439932 976425263 12120333 264834476 471483486 649461065 239796924 707046119 481802648 897163925 837493586 267574404 189150828 288648842 182079493 551797227 881668573 213472150 651014154 280755286 559458228 437656105 675567511 517655639 153939156 677456731 228682863 276121346 374129878 808071373 793434318 252932702 872684915 73967680 87073323 504448115 648192389 307975147 670625737 999418662 760871347 119162847 810949896 349328972 778085212 62229369 834885704 26035836 438099542 992413715 693338966 147112877 777274291 470173167 587348750 655347438 765848798 676211565 238500621 526658056 422210850 249602778 343485139 720962991 653797515 847281509 231400121 848364909 357383163 94689567 363653368 106316610 363363132 106431506 889812164 149569512 850012029 984956004 441589148 856427830 365162491 143818284 383856459 923134823 507005296 910603252 882124546 677786333 662434639 993094097 210962105 716797411 755566477 976124586 688716235 278232167 373892256 961650126 649879824 474254363 628301316 183442338 991401021 990709692 657232087 398075601 84983810 745453446 465913923 667295084 812523811 13374344 344304514 921279524 611754382 242676727 261687905 643936637 264980855 729799952 937433435 377085489 449530013 683263889 112278963 842130145 531995506 927604768 927300423 128018098 424982845 309304525 333077813 480576482 649103051 308688482 950636621 721176813 205441115 79647430 577341145 75317508 628088653 628616826 784879198 505684165 280454773 875794979 251979651 871816024 633408341 729660969 108090237 500896039 43892967 157189491 994559947 347100283 621535939 837627922 672300742 966160837 376926974 36388870 864059332 297238515 303015329 718103328 692477004 181350022 142592474 566385177 138320398 715212993 242703785 490225910 343468409 580159723 391364452 331570085 377730448 685338898 340481275 682440865 364280582 951806894 869790878 194698593 936167680 388781818 898682936 199545995 188930959 854392877 637743583 495344742 119714966 952661013 312557900 517970722 30179108 510260055 597101968 135566231 529640269 995631092 593302468 250746908 971950464 189072109 56108726 594989732 260989932 124517395 799008387 435938627 329909803 163165680 877261747 272547592 233573716 509959896 385677045 715118740 879712794 940791197 392835328 933019552 922603949 762562371 123420513 856419013 275068223 783450841 166944880 170678811 121842194 111576465 183776067 507249271 408138111 381479225 37342876 981371899 322930725 655336042 985349971 942173686 951505312 403132905 837081887 378782092 337809261 459657282 741871419 126911085 152127135 51341260 229752276 977276350 300354915 219251907 991873905 73620757 779036696 822601848 925430074 862210338 381373149 727541272 435356444 64131688 6127272 948786227 654898432 908686205 509305141 241601163 424902683 999367413 58210838 330323681 562479180 576865726 665270419 842363041 266156190 697061259 896338209 980870859 975331960 401214950 676440697 696703150 302772593 99571786 145206684 780031937 25565721 732630998 271556998 351706508 38242591 78691066 396777200 490247588 426914685 891451756 370326691 322999643 770745815 622734671 862786923 259085649 398463957 881315660 975188302 983977905 574122824 211577138 768810842 881726959 857028731 919767916 886567961 737649408 71047056 55789832 524560545 632803597 151710003 239816131 132648078 495849451 325463397 517722321 219661623 366503143 452678483 207437783 950708128 663931417 605208042 245532432 429692759 19644069 365059104 355978356 839196105 76422689 967373601 235359087 826926153 123785926 196616902 402307033 985692276 307657270 405378583 621606026 485538419 401580297 625715764 641443709 420861571 370314651 487384784 184718739 625929514 901885573 701025828 265473268 140129043 124609495 771775211 127149414 915132044 303291586 395726905 756637578 675761832 461972702 663434633 82201301 852548114 548134939 805024256 126704262 942678690 199859248 279039998 621380823 426084661 709686100 557191504 883075908 396624647 834629241 667034093 580810311 628487828 176215714 596261002 854572506 182131085 65558011 136422044 504270475 638259944 914234498 913619123 704142048 73658319 297430535 706470286 808304352 120545419 653148484 131988492 118981989 914507864 606712784 446159961 450928718 8129395 757355874 815485639 640393430 476094605 389245402 708276241 263172372 947977458 148400698 210482212 33434 999904142 823400149 472918915 394148869 260365371 698539835 566768302 126255786 686401421 59479065 545000748 376140169 831445631 932024943 589314820 380165618 647261555 888002005 683061255 157521768 922191252 133547024 319805855 903460577 957398543 615374655 753343751 505512242 777724141 371788434 940847161 356843300 307215692 110333042 505715194 94093885 525305567 235751946 800404228 207457283 944803662 601780869 654469023 345343999 730901618 948861094 324123600 864617101 886989 58608334 465841896 549564269 262717576 203307589 716094675 342090543 363370219 922766021 509400062 694713070 290385054 807581322 196609787 343723629 671542036 530722444 110542759 797472574 363070026 969383708 638415677 763796602 283686768 861488701 877728119 635024135 612326648 681437187 113160000 514683368 507105690 725319300 587032402 734285139 606052277 616525964 592187573 552731791 344403918 965630265 292714478 502652319 712771166 72934927 298322481 260143621 757716237 254226776 41152190 243349148 5928685 853885844 121589360 655621327 370602974 630974137 785378046 195674833 286943067 276891359 567034433 118808761 937432946 246586340 769038895 705228155 464127538 401581339 827699623 51348344 983295013 82596672 146241202 619598074 187065399 176836453 391014089 85080130 455594732 487927997 974774040 206325527 150153804 439396134 646342701 442225988 900739686 801686483 435562357 81054465 603047684 134095612 382196230 622974739 815992674 175723918 429999660 52034357 213401378 720352156 886417859 724858208 899826761 96716688 484442739 119059813 191597387 922113009 179556976 248892819 818483476 742522518 120420456 890424388 499673049 306167383 665491224 605142871 913019604 875494440 548311431 155457396 863030154 305065189 474131374 653240068 429302708 933357850 122305407 251294124 825792810 687773117 224868425 375744916 360076298 641192190 429633564 418170147 756910630 941374248 752394064 867098297 319148521 636198831 127420470 162858311 205867387 627318810 878777475 326781983 993900070 966361796 248074655 118548347 453999230 882285824 532558534 397436867 540856177 453116884 788043872 28378046 891253816 528574151 917960208 192208926 985802767 721514319 584094411 832658606 777147904 48304797 162870120 965572168 781996146 510901718 388906907 40452166 619069785 550412629 134091026 617507594 794881296 862823373 587649725 822923832 650052971 276815617 583993131 799878800 845418479 362019840 909734359 384674833 288229633 877253327 455121006 427428580 644359146 347073696 442332283 289531042 632580360 806993085 161748385 158075331 834627299 984879118 58163002 264215022 560377533 472455224 968479671 992704263 594963625 409813486 266943729 904106983 362772964 639442421 95969045 979363725 283183102 924853565 593132522 966634981 566978732 718695180 834594005 352219266 893636313 672425046 337150693 748663687 221628320 161802412 572156954 568752391 739513772 294072215 8610375 581182389 524537919 300694903 53877953 369549191 653690724 274118280 743838238 633527505 314099918 277851346 174198060 714597727 664050126 855722767 832887256 59520781 515719196 891517294 962435240 6566418 109697027 983611377 495733808 871032171 402585392 477724110 90814909 98165293 884368953 683069861 659584198 617318459 483053882 293919647 999234875 386823838 499895763 873471294 548381146 735088745 870314084 837380352 699291335 208698239 696388199 258730281 437608800 383601440 644299959 908701586 217025182 535415892 411288026 73852064 221809759 823159778 799681782 898603172 686271181 406837588 823303199 28867503 14980212 809699528 75225944 920042900 474207306 313078455 303574326 126167398 296306604 344809367 248536990 273137178 337714072 910296342 508643139 663731644 218910251 719238339 698820543 235518063 989466772 780368466 246778854 294240449 395133841 978753416 187799559 963375732 352193332 710938998 800181789 290087312 592637678 850156511 311270516 512863149 707217437 45782475 181757456 968525707 173778819 527081765 858815089 787574188 956077313 780793771 123898299 91726087 516093766 963330846 938134893 406555301 913995145 774063 940791068 625599995 727462028 849570456 207217220 217378356 329789129 334487394 86095677 527656479 168016925 78863401 889637893 228771905 307257886 99950312 994514837 656334512 580946656 416142374 889044631 895960006 45522124 322960369 179489478 78337983 186284645 110362507 715673542 881328327 877743552 684852348 541802363 320000637 529921403 735446550 262692397 973437762 733762913 932254373 833377076 227143635 836501071 373440161 576888573 286499968 603327843 515842420 697638118 118960549 944400686 655620199 915692386 5031151 884912538 847696754 662482971 293620057 294911734 255951948 869215716 650737391 286742606 900418853 91681326 97321510 512746586 895398938 332626819 134694428 614670844 191726852 9486135 146292749 683717739 944031220 258782819 122932825 587309030 995299726 826460655 617718918 248965429 691618081 295340310 56670590 994129387 662209596 48827507 245367586 681618057 495466592 331407763 157447951 721929720 369806439 107572804 584373495 410037447 56359776 397775127 190114591 517091408 302828086 872700993 842236296 767809096 64586697 62097242 919759132 757551661 855593436 968460064 814219159 13416040 701409309 566194127 464680977 902954049 794529467 472274717 947493037 892898921 314475275 408716993 201656873 831615920 229215790 166771522 758075412 230092387 992015893 658026964 868414217 532834725 274810863 384215313 129830731 466289596 650007147 759658823 593276089 94741572 151004502 690023688 335772711 414371014 868731533 750967011 311805688 890195880 598433647 569397979 323136739 576879618 700787085 835350492 683034007 989082261 939538771 608803286 752187370 232060692 431251293 869487344 103774924 33557458 479297581 153921720 158502418 432298718 844127756 318654153 217498242 353959286 957708714 488017676 47026768 909684189 482906271 169603012 852083269 478564450 32231444 730247566 920038353 134864845 76253717 524306117 197431766 144041236 543391060 928895748 371429552 557423170 786043052 223674243 362145161 288675731 89674505 683821722 140311840 526301857 163143847 895615303 458752394 449810612 838727676 764790250 257847659 476204256 814515198 256261853 412946179 667550638 730740895 467566360 46343622 666499040 4799397 829790930 270590432 41992397 56451053 982072183 613679282 934555452 989574204 176863106 883605474 50071297 958014305 406486456 475426796 391034166 846572885 914224899 888515532 566655921 601512912 264959742 514646150 439991342 184090709 183949698 882770412 395302107 132132225 213180350 397210845 801590577 864468129 41171817 35419212 327887351 603990830 354117852 800549179 233472121 189113632 30212955 534411020 477017950 734818174 458851254 917246491 402886107 675946556 437812874 381514311 704908493 650099874 577305465 19740832 114618478 536574972 611453316 749261856 340470757 42993657 304093690 269318483 986314007 546269208 422658678 376627776 171973004 512174484 352208141 218519525 752946046 94810537 914811236 441573198 308176237 121111654 773829630 518522138 310451484 982407470 784987610 366536517 609636607 941024047 681408950 441303695 205294739 132713376 838973534 293539721 89783192 206982017 326366267 940103925 764426028 275252461 728991213 289196010 343128265 9680918 624216647 829336163 501559228 975951069 98261752 290764945 660973568 616543736 774630925 638537633 501338388 19779645 302698616 163202502 472547956 532593079 358332735 784303941 405405415 81097091 174278186 996149994 572262700 784913575 184358327 558444421 576489607 385862664 981446019 378988131 290016858 516511483 894362621 551261897 455585666 870430939 865991600 713900629 711153963 974500908 453616115 626763861 688966796 780546404 940200664 375600509 356240551 162129038 573597549 844542413 906932064 216441032 843628679 743051676 166624710 310120760 211535243 390412713 253772433 663712984 777076366 145724208 137879559 631877819 615677050 557756889 790210369 604832600 559797789 400257382 312032 152092799 782725044 363502739 28049561 226239391 73202554 756102143 355710752 995238997 429826430 206813698 882742809 63605678 990535881 326217095 548842955 425540387 158504214 591472481 724249717 273138598 170562322 631079869 758836015 300636597 980468010 511491958 472884543 124106089 280204322 683379958 675339985 968954874 232412713 549371843 44737165 304182156 356723990 907022727 216736580 98983740 672283955 169390648 16145848 363622361 834164374 509563505 349733871 977216935 159273759 119431644 118019874 760439106 171773644 299084558 18839861 307407339 548609584 1108159 651131039 646432725 156879502 506000562 425864458 573188143 539021145 329072457 803635357 38584232 736986454 302312129 914644222 426910391 506417 411725585 267034296 77635134 34130546 136550697 75269046 128313702 402360185 267326634 648734892 112915031 47960788 387989349 85126709 292724065 100846883 327280173 466414659 238055920 927532922 191288552 659506115 970351154 418122941 217402439 630527333 421185114 488882896 402444193 42817908 111638556 647469603 597252207 366373750 349612156 171250672 308109551 999294744 666654082 207606787 533598787 9301929 691732806 799633746 139708080 578162996 166589655 517879109 111223030 853786391 861597293 517669140 945289977 161040968 814086878 881121565 451118346 553125390 68061841 813985997 979314503 5890653 578251653 890843999 387977378 632097561 580942836 26760391 664064185 362312379 327326719 151490019 542722871 316024259 409780859 303822050 530799198 988545686 392677726 146078127 870115968 245756279 759843183 304811571 284843009 41257962 39741329 410160832 822218450 450215510 292104223 543961879 204321652 362635103 155434600 73522149 148400875 689383617 900350662 971383120 774297065 772120265 917499675 145511689 976508384 942040831 268690149 604563179 828521984 966985951 810694146 64024758 531681859 580012178 353269281 535959328 851497823 406599426 494218478 753521810 785948439 25224945 458749945 289159818 544657504 872275401 660497221 159382684 134539268 781925592 121040041 148904565 530905272 663343956 779140817 816115350 990637616 723218142 226716626 410928083 733260737 290023014 180859176 759005577 264030996 733193535 655583731 630221345 713243138 133181052 9281860 504621496 664993589 984921863 172377254 870738069 317566180 150757797 293671637 41151984 286437347 141945650 762070779 42098955 552283505 947117062 421181445 875752283 729028875 718475509 678933528 83427889 853337835 213247836 111616726 845343871 876910222 704588945 277798093 674468796 329820922 635478759 352204807 710023200 784428120 448060564 364232477 788278899 730100811 591883839 384875303 62475618 179238217 748756108 200056013 758237310 869704563 88491363 532357356 272745183 215957585 332633438 142698395 363023301 72638810 274344018 341630570 477634656 616163094 967043770 407297822 390858525 656774241 584860756 148689431 599488486 365119644 616782018 498891374 274488212 39520716 747550136 824377385 879188452 146262221 900587339 531452035 290057381 899059597 329821841 424780775 867675326 785785619 272916327 877697856 822751030 305736781 295485704 272242841 235552395 352832279 947510000 97472099 137043114 516138867 462711119 225780309 355156966 463109764 93806485 57084574 442761975 335733189 408309919 657108046 515234702 502693064 108374532 564803211 693309039 956532431 339041619 623199502 234836418 872023269 104722081 966738089 121503104 795610728 392179877 952065787 944378178 359093047 836750032 306481710 141168612 397616093 419503873 91805404 706383388 160612346 865408156 278765834 797646234 477174874 707923320 462297492 722714676 682058549 534694623 260288597 182081996 157946944 992102302 946854206 843952560 824841809 726902852 864288311 935298715 112926890 569171244 873492562 194007505 891417493 795572259 658099677 877447596 364536146 401087452 539529731 34741973 741566489 742972159 714916580 878945322 529325758 669739647 853872569 773001384 188639441 674118211 216230409 928917828 866736326 261746934 437044525 954218732 645359187 845314646 346420771 33593212 916324699 872489312 438773964 408203248 376768533 12848150 433367885 7648827 285455782 465416209 996333201 597151161 860526529 749080977 399520814 555412309 694784378 358559128 481664849 621787352 70309157 234799135 750965732 702553808 214035264 257720081 498271870 31843648 441471597 846409361 667000851 609997413 364299429 423439219 974012485 861375484 688888189 915584749 576546532 250542035 966224365 66885025 927735106 416421219 284329059 633971176 909162161 509575806 209045252 818014255 997637182 804171018 967790980 851658962 27245478 473135307 843627043 721063315 274935243 59180099 399698951 384074629 721714210 219165419 918712377 323339014 991588724 881762047 261086353 160290007 287544379 595252358 817363306 380089965 649466531 496732863 672519791 592308809 126940690 256631354 532328434 162012626 600764747 114545442 657306987 891828565 816957387 152074550 314909510 973850546 730476139 946941567 153325331 108636604 545123971 251856337 112840426 355593864 270067490 133628296 328666216 648169773 237886296 774186325 201851498 637943204 842940234 48599648 45710430 511489056 923238021 330856704 707253058 283700533 797524731 626700132 468470467 233358054 159873046 938421097 75107983 247585447 133117449 605282204 345175623 224406979 987403814 275500528 958302737 529719976 648224114 830468943 156433580 607181693 86381211 287238967 695990050 680824345 352390121 3087681 970818402 502098179 691552564 335608901 661238286 230797958 30247542 599967688 126874350 888070713 521399708 544315452 144105159 64794524 684071474 283270212 713982381 930911815 419534999 182793617 992142887 258933398 491578246 106046334 922321359 968193873 797714950 677115471 433572531 377458546 136493819 63517449 804525113 654187689 705311140 188240432 40338159 693763875 22853486 437777793 118410018 792607235 336642953 60181865 5712624 344808507 650787478 284244475 740472578 5531336 404614073 402863850 198818991 125432086 937734969 426363086 295353427 697258129 990603599 93472346 122603319 971014492 703475374 103937876 242273630 105070676 358643821 80682272 178868363 443352679 44914402 446243670 321875291 214605258 72907010 873258553 210541687 748399060 656283692 354016585 153689763 427964812 323183936 696579619 332621802 905320255 285045715 536715768 194251502 596227403 167019425 967400131 543719508 321517327 883234298 509882163 724250483 909498088 639282012 792154556 107058378 466896681 888040310 903417690 858430284 837726821 297468744 25078187 811988808 182302752 41371986 441253203 403842585 832397916 750855509 602794511 845350626 754974852 555927043 628093043 606877785 675074404 971985221 86466719 403772677 13121632 785084884 451363883 920595580 179955176 297440845 930580204 305388706 603249209 959095834 434920535 244502646 231264867 712958914 737405613 805651473 5410020 966649609 684049718 351440627 862424684 90947355 525028037 504553177 260905028 949293056 861252697 929191290 866929747 913875758 648669672 65197588 818920140 968889349 718991852 737167163 901188044 669700439 793790333 582006052 462936243 349381726 873870521 311401632 119092212 991290718 100813515 869740754 334618566 917581595 550591513 430073295 865672805 466374303 364786011 178700275 969976280 449137290 454593384 244981986 132788987 345995797 692464895 198221648 301492674 790478761 745323811 793278096 473463332 134200423 895531129 981384772 584778144 547705669 550089887 20815958 402013591 580562041 69770799 836589359 264636216 743450932 651599250 428798638 611223984 901603576 994829529 823805966 478956277 818877365 480007956 980576622 884892266 721151337 713009306 775896145 348506403 319756772 131295424 378977038 432261291 414064680 511784829 651408748 455213407 780456094 565856205 420240847 542092807 283523114 911217193 681668519 510482881 6695730 199890042 902558784 281558925 29081886 576706494 921981681 48131740 134841196 690013347 579639149 35440039 621133468 527834243 861325605 459455806 126903914 610908651 360649443 539844071 15363639 108870643 406464758 346119003 688340770 830142655 945515465 174669534 318806016 779295980 914988838 100851723 420739534 70973640 697756379 926944960 506843137 737074407 570826708 47363914 197461431 686013397 49342951 787600898 903118237 816469611 670249193 824081439 307761938 814376139 307776746 521392712 548610752 910060570 305453575 923875370 750776699 73973196 898609701 933948035 206715416 586077661 612476044 702304567 974585964 952388727 732257277 655632772 896432722 786860307 630606726 756038108 682607880 242373706 603407335 998624779 466521541 359986531 803452448 71673886 495361921 811565468 315705250 3095113 96425519 942836733 77772152 499318110 59908534 57045342 958142836 31852832 395637844 629860887 35448412 588295804 290712439 972580879 404371408 393425585 90529231 427116131 147914189 242700654 853872224 729642873 418930985 65617267 150520389 58661608 385179028 548065241 886677829 194099985 907337735 578068692 642895640 707965383 580140557 632425157 87900720 158080088 490172828 519524090 121835164 834832495 21802950 492579523 973963300 808928106 472312736 187888913 544172191 776604730 233005206 785730883 509823240 428601480 510646610 474541437 635840098 563082797 333419373 907397644 901210769 892098540 83119544 342728931 962453317 641754536 218611082 237254724 327684926 958289197 327739251 440833109 762755302 372663429 877517225 642347983 104869297 752772157 941434813 347361108 765654985 99329445 52594669 46864388 227634765 209133554 278806941 355446684 95073890 578211744 150375761 384978908 535639441 594469053 648254688 586513533 780108409 367430044 894268475 16319177 152620646 49685574 179020382 54855431 316973010 895199349 424634661 454677409 399812649 659767034 596880902 400637948 687917474 13534931 220314307 141750837 673859893 618797615 239149302 602379501 169170852 190099641 422587850 633605005 319449342 399273108 349330535 612598308 468270789 665294365 512178726 742833382 857203931 527635761 933909160 962352751 845074137 667626170 613543296 432216077 443643428 202721917 550092961 29890623 430003266 870516694 364081704 724159406 766164144 772857818 410467561 287310835 634402483 178077955 393704339 453953094 15864239 170485900 916063458 146601117 698395287 216732020 853458528 914098411 391527459 99136722 945984971 882481294 116002496 777524071 264466114 330771395 156299072 33641256 92971835 681709654 433688006 640394482 561257075 917734235 864532970 648415768 337719123 749215702 239037113 754848928 784097472 274911689 427409348 149419139 304527318 311035501 909289569 247900643 852115889 190170896 591024965 724957618 45064440 784821549 332848489 90830179 464631174 367077107 955962792 990524529 687059891 359587853 572830259 766548877 693345876 273033025 835434771 143386491 660746525 186265657 901677500 927776141 66843570 780317300 345126175 547054424 963594340 674695259 601178302 256893148 899162798 57537107 33658116 285922559 592250176 882988261 61309868 434312338 860348374 989439368 661847717 761297493 753954420 129197681 128992565 518064199 17616518 365491909 122975831 776471910 715074816 639474454 809077620 360678450 528431044 554341266 918954135 319038710 236221335 946025418 417070976 332573285 411212145 720896044 925361134 447379496 77045183 585870728 32971455 584927696 368042816 141467813 279459921 591561698 20805703 836096974 489120873 263774774 138520381 978576106 124928839 542902960 76770296 386569807 957656940 534008186 531042084 505114603 559990133 144470329 776456394 962069603 664074333 630502975 892697529 685262007 295921557 601904474 162694168 892497399 190534552 91917960 916219776 870727778 968870906 939974443 608724418 695273683 809579935 436605597 938957914 44568662 341723587 627667145 990699224 662732539 19649587 84527937 885990093 867822638 719546064 331774167 201567984 701622762 212343267 57964117 726642809 5871545 549658384 361059380 566777278 634849732 347128664 887245847 543325063 397353561 585567963 153212584 692757728 634004891 365099655 179094747 956757828 770207170 139522472 136787166 367033086 540260029 211421220 244868534 902655283 969911177 673248033 195746637 940595872 785244267 897034545 514132835 93513131 26708527 948187533 198746140 966712674 765878370 250667514 415094845 449880465 234402826 869223497 241586567 635621200 361318165 741420673 691882313 542836811 224832197 126222135 795484045 653166230 823099952 279268789 927073419 536560477 148933848 749870179 149711620 149293893 403999939 696877974 710842001 791964810 316831485 172410279 19675424 970324571 542810181 669338509 904148918 383459441 131361139 826470064 47485313 710750731 402648207 199600968 874416074 499157180 869786877 868012455 838603752 646375331 928955280 64908024 930124864 928125433 256972586 762842933 625281951 102647204 733248445 17038241 568291804 124756031 253037248 230471224 536670461 40265383 866686128 900349469 61278221 678393286 675734924 937442413 426545224 862100313 503483717 732581716 91245110 812743080 353443663 995560844 669282987 182908852 209503262 879568153 354583295 201767676 68703565 312479508 975373453 997030317 349321971 998506549 682800459 405426664 993512015 676254396 895498623 822726861 655839839 382882734 921482970 15762084 544424041 983150005 446422875 233556508 254794262 535812745 666344321 736656938 755655411 154897230 178691223 709703396 409943284 504276071 845843307 457157491 636507980 10737906 912090539 265382550 637477090 524471310 923881268 348302911 796293431 166976818 188469331 909320824 676713349 631107407 798550926 231896468 779409708 17684433 850516800 895948044 416023271 706292910 410050676 235469999 525728438 280546555 171905533 666095235 222003520 313332494 531766713 410433342 902084359 473933592 563635313 571882382 657675533 652938707 275285281 174807386 728212575 134970383 775937000 245172928 94385151 272920505 494360891 239180748 479433807 156542557 53155935 142026367 435906763 845514833 103971817 273470065 659973461 804349787 947414351 327772474 135615218 496561455 312928514 543348620 159043922 591573962 192874879 816940100 232641260 958500992 163624854 723999050 561819167 162860222 830143835 901839004 740856817 357572641 936502993 890788100 638320781 785744269 671375968 331782916 792605839 611812290 240494458 363314865 864757954 307021543 161343375 878880288 852464873 768652669 187129322 144146783 374486349 199007023 716099605 718892920 546964943 524767611 233862697 902823245 894821613 305155124 398069355 109120879 43649256 263980802 466365379 648208633 333293222 464850269 987390139 633708221 959011755 517306496 626077630 372284421 499301445 523414487 280336438 111312993 744040026 781968302 759316451 253035877 149344015 433230863 587625883 616043181 385142889 91739260 958981240 118953069 562416172 789720673 962847369 555822367 536801514 453569287 779884926 73310033 985459169 317066356 169548843 78440332 631148142 778542490 446723586 649361214 312584262 575110129 115592221 868768377 294526449 54568465 219977225 392722194 163160063 669156573 456978466 80732021 214165038 798393921 823617670 914521301 105078611 257844781 604819265 331058608 749208895 196869990 852485475 17414877 85195437 698242129 39027247 163655152 934422054 567639467 585211532 827245817 479763486 572652477 711634732 327813513 796731978 823561226 976844629 299268820 287786644 292561214 307776376 408400543 60298780 300448647 88806808 238209773 695519495 295302372 706627475 851766421 779410303 952931186 313116040 201570583 544096882 120753481 740634501 791288569 915226288 845664978 839603768 347374723 372914302 173896382 960764155 777071623 597000775 801613440 678714175 712492723 375160620 997198530 826136049 793032012 629010121 142253622 216141983 33379208 742837951 241146861 896222046 890984392 290616599 361173519 658453161 382854315 3663546 376990245 896972788 928374842 66513575 750352997 738751845 434978466 455803422 161071677 988319188 690523127 571770675 565063665 721803031 766220981 555603731 118968886 509546926 20641164 871680254 993047399 87675249 245271661 709026918 385940480 15661723 599470194 83297784 324935972 690331282 967548253 280544424 405793327 985567430 241274893 923613174 353706621 92955537 176080816 275400272 450335772 354181463 524195112 469596197 170843007 689831280 569997513 285424069 96652390 746803345 980703632 635775297 115029166 599254488 701897318 628183281 137407096 273332799 640663519 880171560 443194420 855025548 868859442 197487322 117060736 870148486 774729015 471601745 767068104 944088039 398757182 996637173 210571814 563099171 780951057 722532598 331055657 488344663 736394628 430100744 718314244 710712249 247206446 528388197 827455221 174963248 319609292 10265893 964112019 793355855 65032142 276383007 398176787 594675266 315914269 996192498 85415241 994246011 797044562 660498830 466422621 13302523 287433222 985832815 170391284 328429251 328924769 206034043 282369872 262891562 771749694 992400443 701619376 768418106 210794007 872659418 179482504 464648619 330376195 262900870 683371263 944020842 880127287 776390171 130116566 275206027 719304659 265085468 955127983 212012431 955291294 451517956 992730877 5577398 188490008 45059520 219691641 54135629 227554814 279211933 584944847 693112845 337076540 434235842 739462773 707149394 62194821 556009164 802934058 328817126 668041886 48396293 786222835 321720822 350837057 245944189 145850781 378626382 428356494 817487117 943127952 159899797 520353082 266169977 261180210 876798964 44031824 973605473 961319984 692617679 806503108 329337859 377136843 948578108 445634055 943706232 124723010 949907611 314249335 557514495 61578739 167873805 584306760 461294138 48283685 568329827 423848351 279779960 743299798 911026435 986941798 689389825 399416144 190740105 119366970 898859131 13228617 710659732 171507208 494769727 987176108 362831374 415258136 46488405 10369969 703311573 828386333 34481670 422595927 335386730 588415006 124774431 168337337 526624789 982106991 756607009 625898351 459857922 891194125 72446656 232512665 694181572 66349075 699778860 306045482 805261884 831232470 678540375 759418008 287911541 688788514 371704596 184285923 580345362 779705570 550512969 69193025 785023145 628102695 893664858 71056271 898721340 617362972 653177144 266219512 230126648 97603001 259204090 523578254 310593702 263100081 772575166 555223250 164833258 792849248 596861361 179410351 921804938 793903225 17971504 686914822 621778374 126814799 586230149 193334084 427056252 67259890 278710690 816733970 79594451 554254618 444481902 287824069 118585368 837143300 803080962 936449008 463743356 404738087 484305568 162792676 336020318 910096306 859940849 366770988 724594929 171919827 550775874 261885018 195341257 22120254 59501380 327541310 636686413 763202012 182409672 28993333 610620522 124999078 258290435 466918815 409915420 272793294 474658934 683857068 493971655 377458953 268543612 252876810 927043934 846871035 673716974 350719885 636026694 353626801 79306516 867622904 148940982 256272652 676202233 709771985 523556990 138280136 553393478 757736355 415011384 762112237 386468310 453357686 779973079 121191329 216166708 926962009 743253377 965061033 720548247 737099949 91633731 352156175 484074469 363584027 464109102 437098031 342077736 939679867 503717200 235975735 216290755 937950620 322010823 970056709 987217738 234615733 702803416 271165446 51980050 76758795 985100923 364931971 328573469 691889589 212067201 967759469 771941502 132130266 584423725 253250986 5890416 825635442 37333173 332440210 243292073 367732566 619878437 572347942 266491274 644872436 290257529 705080721 287588289 775978215 712696478 941558635 252094966 49249113 438247393 199331929 775671624 72626606 602641903 637277884 530862849 926008631 410767199 449868390 327597389 445181216 700777383 214534602 59897478 773522221 446808486 235776731 499646177 987052827 148924195 200297007 319704998 424631745 954050421 649338137 602911766 642457104 33454552 416532080 388359003 230154034 706387599 367252284 194467280 921241833 441380327 986041635 389864853 655093438 951613914 153222060 724996016 433575754 223057610 729881012 437060104 249898279 746230533 451031153 605842112 982726919 494088396 342751331 754734908 222021039 406907951 644444429 301659104 366520819 471674809 402473491 356188048 167198291 199333552 697974314 436816854 145470744 783787417 715146034 919097294 529770968 642691780 57283503 377686388 496223402 969332678 88026081 507681866 268456062 20143521 456695193 153686108 1002062 650948094 309070659 472951259 39910580 804455944 334660240 891821525 668607179 922759059 533953712 940086341 864251875 513549988 149512222 325394477 170975984 469823299 446472073 531918476 298176234 786712991 832042615 466601250 522230221 240530872 470439625 309336116 913509759 457074674 845952574 756090473 881397545 797480626 718137676 193978794 912612212 186467071 728435589 281508820 7982832 776420982 484491642 659866331 6463722 345990076 991676710 469446369 719843682 513283200 759377953 943765602 988459832 408100761 714200926 984136613 460054223 271813451 392777378 901731182 427564074 670925992 331901106 610065239 414233311 345889028 298512788 128039313 369162595 198518112 764510224 688815369 64778985 715624232 448452893 772161416 468582708 123899843 523512645 5719884 324193969 265151694 500912162 272636078 444652840 388616544 223472486 204429457 800614142 880001679 811073130 889811795 256675958 94421778 423522471 866792253 152564315 968243134 50606447 426119307 714060706 88039248 627229675 436668866 261605079 395803333 63472348 600260638 61138727 727518438 355412390 543473032 955031954 896795404 554199597 918961323 35387732 713996369 821263848 94396921 27242583 467225744 654076662 153949231 278107878 60702461 303336057 837743612 598130742 668533292 95688530 66190515 185719790 459756933 718125794 895259178 989617679 119332629 657076592 994549519 377938348 730263103 35971290 20209803 586913660 890272214 827068598 759363272 260743286 340146640 713434051 534200312 860361983 297137486 69409735 534081025 570368709 245897117 318143928 154255521 513319349 432414737 132249046 354590131 529407655 916631770 865850051 137701350 223171448 550254481 305159057 486496108 943194323 167608421 709981473 208537371 11916368 915454012 477629365 46539303 80920560 887548796 11875049 868507202 406146734 72290308 788683179 605308305 633367986 952363511 389873924 782739865 365076790 944806511 755374056 604857099 19792540 303508375 78431162 406176623 829513031 682481094 196809376 393788123 460376194 19067040 44157799 515761804 105570270 19195904 323894666 89197552 1226866 992189014 251465977 558497086 178295730 477741134 824184308 327976819 959196073 26736167 483026337 787572209 53044442 665911704 362677702 794937650 429283893 891857544 737265211 844268718 569250820 751895996 526770740 611172704 788237643 314533620 554753057 806004262 52816146 844686265 294936606 901105234 894008010 142699268 525941866 937617784 152249187 564360952 557173190 213483589 857216070 999709864 705740892 55305375 463929426 398741973 91547783 612683147 263809201 711807561 531410062 700933642 762730523 87045007 208610693 465551780 195850683 357832132 822582486 111210687 826778620 397495739 595918169 734357848 680182439 547492562 553676966 915795833 749566883 491870467 879568529 627124115 226060625 264060243 330188939 369612274 80197738 147210130 503379909 366680828 749180007 563769141 394943870 509975751 85556863 886215429 967006369 598872679 581772092 918505459 977466213 283468334 135660535 819989053 554272226 552078804 146305992 922455673 346326706 908263465 229222264 31955180 76388903 536740838 164659300 460164776 408530538 1924026 625562013 610471552 612358075 693460091 792694972 374745670 381688109 876046109 218319309 924476505 744154201 180187751 349923695 722444733 564903042 303803460 21582246 214185461 841486930 738314291 662050012 42206708 890935276 24575748 727449815 824342198 54843501 832525222 964846002 375320105 531075223 196253111 735939372 349672610 540948541 802827571 613544665 76305921 975886149 83646525 855199617 809239355 317031978 749808728 399428817 684463319 389047145 155149504 409619943 390845642 955763295 872501611 165263358 172210604 974617734 522502059 913196989 6837505 706156227 208284713 751111808 188998456 530622636 792849260 703931498 82027877 925041075 332790221 578698448 494675096 208656744 319121118 610682222 669184273 489315158 92726635 902021171 903011927 684292238 353301968 6669638 196433266 794094639 474917806 815300737 348308124 527417125 596717010 340092191 729660575 80071770 209658485 666310401 577937032 230271823 417950197 116772194 766132660 137776806 306624167 313302867 468024512 895421120 302159766 249595174 616504128 302906343 946007411 535442801 400344638 648774814 376296665 762214521 83785094 37690101 24940781 622417905 651050542 356550846 113329600 69709908 759891282 613767946 908905152 596505391 503171911 792549111 469450248 389781003 332485241 127655906 929665779 378690218 152833151 411299365 397643423 756564362 112614138 803987248 755074397 369813978 30989574 908402775 77157204 89585897 611578292 697824896 85070165 375370885 884097593 942141841 931021459 228753264 231175811 200245605 456624979 121498503 717223383 299937984 583030192 881194763 319361031 843148967 662719075 649597874 690726791 800185369 536598306 565279294 518949577 339851467 435678509 471700785 738032429 481510120 16829198 174267574 295280351 368523870 973442861 167369924 630529323 367087719 140319093 841776157 354288061 202007961 240695548 845041063 137328156 373142057 591328760 208250750 305040891 722428904 385131101 797160334 194773536 956611355 644481719 198200118 722424559 109849328 714939300 444316118 523628509 928001721 862620121 29386504 594364396 434683836 381106825 505396658 73343476 55461104 298681142 650316728 466285332 41213382 867194771 524260032 315178211 66682904 965431359 605466988 247629937 801668604 340320762 633104908 643061047 795337838 75437648 722160479 83468911 564075507 150790054 474900132 909927054 481283777 894402663 624988801 946411419 994071627 306073357 583744313 958139020 87730955 962609657 207314517 641295459 165263015 233900469 449937154 235413642 623447647 778980465 776101606 663431850 990449447 364530049 923733913 411359907 204593318 555842866 20317530 529584687 915827317 927943676 325476121 910253103 731248988 450654835 439729352 880327528 653230612 230583208 874048854 124816360 979641103 194723430 151376927 738977978 875284791 919851097 642876214 823467056 693738880 494848346 373198897 786174281 939902477 77093714 170763411 863351633 879579665 169122328 935832945 298664809 372063466 337373783 137651796 547225780 310925568 83628619 808039946 609931646 188851845 958623420 355566926 666457776 856219324 622637078 852146494 273554967 701910023 859204726 941030064 244656737 650308467 112841437 687186961 185552158 338328571 990296511 5198966 950426897 454133382 690404242 362628398 108699028 320935412 874586368 523310930 27063755 382418063 37810052 862453557 599730069 850822343 484738163 242358706 179376856 45842602 665869529 348974824 759903818 306777051 449625865 757052522 778458487 851928398 558806882 916633250 92632974 533926993 203588515 634033687 221205552 46126543 835834795 509075367 242861337 389177355 815751215 371351881 583220671 635525355 80469967 891240828 280068397 69791450 578806768 371123899 893333721 385844045 866332373 184878468 364517078 100882517 516962082 291301359 26554977 245300886 235240132 229387903 107068963 163507184 732286270 570941123 48198265 147766612 235514811 937506377 749620770 37796998 134932534 783627155 739713869 235431001 17428665 338366767 118062315 475446814 489991388 557506942 84365794 293032915 901507857 30207227 212420499 450661833 340506789 656594200 487594845 525142605 241744500 756678409 199946288 575653088 484967607 155990251 900239697 775750067 531877249 911399615 313466339 262623639 111217850 811134955 215480504 553649715 807836126 115427428 509631796 755772785 96948189 874726777 438684953 624933005 138933105 741455733 204185271 813234213 731005312 418265286 801676283 542387158 428636972 196041061 93721241 284725767 538881004 989989734 263178033 412859587 974225180 833656220 655590274 746182540 805157054 518175474 691977160 122967445 759951134 112417504 802482683 940990674 412419151 182958750 170072442 987290383 315360997 729320505 102162959 146972472 957730956 681771404 703228750 370947063 789390772 78858625 510404016 8583877 384118742 186394214 316912559 465415740 290776821 40621951 271966182 998640722 785314103 215397812 174608071 403322494 276448912 968154580 2482430 138559270 649678490 412449611 526415152 774994074 938806750 354562197 906120144 392739945 54322506 298036252 572477178 603363484 350680958 937664572 504353148 603875692 158477042 42478323 175452817 486426993 360518257 208708789 850021549 667057747 13406443 687766281 253608494 299936111 549156393 476489338 393042596 624223113 275081846 690279416 695075250 382131684 97312364 659868772 338526325 653589671 64586697 544163314 965466924 959166746 553495681 558406130 351157704 536166084 506700096 32017846 174273831 298374068 930955504 732922249 633541741 616880364 540147784 723146482 234316642 257585728 889389838 700851012 895724884 160100219 619671388 283852076 481451940 263001320 587501721 863238758 446760389 314923503 590288200 804211158 641504710 352438382 507650371 42773547 490369675 955949001 29174821 533809587 814130864 824126284 980330316 235670550 880373670 289377081 858474992 284625087 281685373 608377200 704586120 307749791 527535204 929711073 851894884 514421356 152435352 581463610 523070463 1698037 329713569 954783876 183164050 863646887 847414188 304884843 153171778 124309907 601447686 28533055 942472224 44205191 621516604 605600700 890137311 772947333 404069739 997328043 364269289 266440321 35298451 451769324 403572705 117594096 321243509 836649361 788299580 528728537 588840899 409405706 123524942 344882786 279087819 268710949 862209967 411634990 459128824 901830439 109514439 385260360 360354470 895393409 382009074 84640614 790225002 388752204 244041597 620501059 868621774 883451704 513839123 147602469 4679709 309682852 738704344 874683356 838580788 584850394 974956556 289088835 537919480 769609082 360563103 352413939 491697591 305858110 236711936 60169675 451336320 794524838 16810155 510485293 871999133 229024573 910291577 781901688 750885186 908348702 99249276 95070911 831756709 912160804 287388486 889604198 921256963 308113070 469185948 12632794 926972851 95771124 762159777 991764151 457907508 400977847 188328146 870896089 929176746 67843629 250216610 410627600 176661888 101827970 757891129 293936006 928554330 706957382 792626378 470147841 823931540 455202060 915975037 428872235 61258652 742583947 541170836 364448123 194492395 757276025 473907177 57081860 237884586 291804898 192849340 467969299 851537588 347029644 839734550 567273031 616551856 812795738 685147059 718055629 315069075 898908520 524719017 537449570 812865255 923900797 54902134 915228919 866750719 791576620 191507945 468568787 18668698 762206051 360630055 232551101 32770595 345623239 813860231 666759370 122876515 93433293 63776507 783391209 753710970 102051565 706790046 675110119 392811839 961795239 188192120 780413005 133381675 2760259 122938751 215667013 824877261 668417420 997298953 261598893 8511539 644602413 47213937 819432457 328063428 148239824 773806831 62712397 364394560 436095185 40538596 533685640 284203729 180091069 401988613 940081096 868004703 859483154 59461054 810362874 518821433 929804899 44975726 792001554 21282062 366026718 445920564 819165262 90781282 399715776 118213113 14418928 357421187 669208154 274969423 70331354 801668051 37450697 239116915 106434658 240305884 158949463 334873038 759434464 704919456 221163667 706505618 911652246 575906825 118073838 898937659 300802465 32979575 618744225 159350063 108124606 502097694 596827201 528207577 441197984 377306900 56808721 639928187 770674873 638855906 930960335 546581561 722486967 345840905 42707292 418290445 38113630 793513279 681805792 4515915 187903880 704412466 49139818 694773836 112561858 399775681 780281715 579173241 538125515 31838015 617599267 486058438 620506464 142163382 432038282 633021070 318428794 986628811 749915165 749526910 101404867 873117058 452677666 80622286 615679018 722970580 984889507 384915492 266150256 936514791 845056955 969966599 410117705 626344193 393112337 175573064 711260935 792612559 287904192 70347247 599256768 810149806 127998982 349767287 426056575 16175715 737118715 382693730 411973159 819097168 688699740 753481417 7336646 879811829 849937966 484077683 446620375 426413522 131336648 564187566 142514232 181897311 123090784 232195002 668919447 459612210 797964043 300875626 542742126 352404509 649816631 840223165 961303540 15600709 419961014 795510887 708011814 518941708 407564097 820276828 45333569 477727290 634999890 553093896 945898241 680130034 131617762 968279072 932417123 708485133 692458830 826493246 683601904 886860142 201652697 774377773 748850659 50384696 577174764 21953710 811025969 547134794 411774776 958756338 976560767 131341907 746231350 651439431 161406054 494766072 538808930 232482111 570980057 595327701 327883317 752623275 572599668 389472084 988624443 419929233 985446193 508507178 344606976 373582752 109102242 489034619 901702816 439183781 776822105 43446929 707918579 462285642 764882837 845330640 867096151 922115141 546921692 743104390 983491317 279287405 33118308 735749238 762520751 109155020 595453772 52489122 978375212 990791345 888121566 75235001 138240718 196179244 522526173 141356850 464959478 399624196 935307782 277001683 388834140 407020996 449694280 418852781 425997009 14056218 535706343 935405327 699541276 400482761 681651689 295264240 854531097 419032507 959356724 228526582 255727232 810839803 241723988 424733800 669141676 616426282 723186207 315193100 470083655 516654339 250309272 940769229 646964460 633685873 560157104 500147586 809616156 275854083 990430199 868349483 468311550 404176386 616511673 100243164 743392541 646687403 239873469 992810163 700664855 529442178 654630280 149409354 142758396 597111376 410735074 914461631 999814114 835556641 815291955 385353557 282561131 644602477 108077840 406114812 860158889 926437762 826562653 420194945 940712643 642247694 324968145 5832504 69394397 594331872 529247622 229295870 476847307 881582546 38798462 539068104 321015533 74106893 303214142 273689250 661406463 454559698 689470944 415832600 616365606 991478544 281510240 575951937 547793257 912701985 447106950 420136331 932332667 164385050 945180895 489050355 855093456 841687268 303191354 67279433 490999372 823559390 938907624 419469447 906361436 414657664 460301521 564013258 781047152 315515172 352418109 18897665 222399377 922342947 739034428 765000580 640711374 34800106 772754637 720771752 928419269 284439659 600347835 224924512 21628912 884243012 6832057 420029466 103730204 964878897 725567727 123415887 764549043 353068373 87184164 594570783 257046084 888747364 822974594 488296363 409250483 96380159 31574792 779293164 252166164 974227485 433110065 622453768 52511731 573478373 979569490 305012838 138645290 808942859 458721667 565585322 248358193 662152198 484145548 345893799 148993303 509526779 328340092 730294010 995505223 699293370 656275528 592119791 222701213 643475130 800994494 705199524 623898316 149442630 909786270 803580499 998476613 438656621 619201766 323023879 749918434 914186754 873662667 692831915 17380759 252731052 504190610 801531127 656455593 7930999 799206640 239421982 55200203 375317625 28816650 817327540 441938088 230292242 947900622 374851835 998653876 102960575 374490655 414584309 943312753 710251799 689097187 514906704 283880641 650787073 693701286 312645214 348676658 855655838 420825020 945495961 225936889 234068703 386782254 883478688 858248137 146306826 357758960 370240573 165129024 399435404 21884843 420023821 201921430 695215644 565688034 671182107 576392648 869687926 998201059 943589414 419877455 641922569 445918354 852999986 242769664 873379849 845478938 156475647 523694838 941055111 582495490 576215360 50996508 882574186 288796581 760213891 698702216 413253041 107708077 331432031 612272189 189425113 597154383 577504804 451286409 371328497 559290801 387921798 225739180 953718723 65733696 901524868 181448146 358179579 713639569 840502994 802005340 29479285 752620425 120075261 230690989 504995080 691915655 921143676 171411010 599271537 498930456 881059460 803710186 839067390 197375672 661403125 792351026 703631579 122381667 791438725 957721611 544121160 154628633 833076033 846625983 607734212 125660643 452861670 632094357 103126784 222047896 655413196 92040024 600471551 820235850 898857886 672980376 73440444 854080061 222969920 413928404 900219428 21795635 495501136 121777692 963367496 795455069 371450300 916687141 884599665 124154124 996803961 278642689 515247174 154723306 335324569 413667786 861386140 162725591 679702522 357231097 201167949 427895344 584043634 758817253 99079651 822133353 240947670 89654458 170289664 662023864 825174401 443592975 161632196 974435496 446938268 613387329 20375034 545338033 734144895 923942202 879286343 140246 232261943 906709811 681281565 130171019 145157756 647446234 7336137 214840889 52094149 812016233 618868407 216256865 670532404 520644761 381471623 264960495 844367899 4792071 674237085 614320981 191968934 846313377 279409097 67981997 618546967 676575956 176155326 485854678 672701752 145798881 604876642 918395096 758629795 222804516 530580422 597920506 128121638 667658872 413556677 835095508 496691007 244384912 305909454 998619289 514566436 448838909 589732360 502261774 384466621 8251266 571464878 223554786 170605126 290534564 454675906 330898771 339343286 413758778 22976059 581524477 56764951 451060160 619130301 80321774 988386405 658499853 92435044 875228103 432160254 718263498 526372850 221613706 811129559 910398276 969780684 987729822 712875282 586664651 265824089 75000072 227741821 811327905 455409094 105888254 136537485 801587588 211879140 589479263 713571340 677169669 978761664 867324562 143532681 235478767 722955988 303146619 829327154 561216624 566439628 774022765 479211658 253127488 805843845 578742142 198076098 424647580 510212407 994091747 641195915 424035186 946662859 646890164 852743237 605346113 278281985 930922321 959554429 153031932 359923622 142839928 624199468 820141524 559509240 54159179 410376992 625068939 120483151 75695708 470551379 959895027 175448045 141597272 156457530 572723068 114946525 881042145 524764530 489308597 185598742 375177701 455300417 976712302 367915053 493588220 422919131 471348981 213319730 245120476 783166942 153818344 290916887 543781467 653902691 408441901 924770510 789138759 949177058 315546768 195127663 835171374 808063827 460552786 532692559 709655140 207898945 241221332 516431778 706353105 413190471 937455902 250281684 308935587 262940475 290379595 944032375 259745919 233165251 633714530 658051800 887250399 8551160 36350911 950573242 980014461 200833873 868377340 987518474 419781625 797910877 17922190 847421378 898049175 475597685 820372768 715206705 560405332 593697483 333695699 907969871 684100841 613844095 902545149 760746689 945566375 559840821 628731753 349790183 292820012 847308186 114568457 685318341 580145910 592550412 989272354 895888369 83892681 326992602 747817197 545116816 900371485 945268534 38345726 626573271 450859619 966540217 45792656 777903097 397624819 327331117 777478685 465298706 952247770 150611238 57669095 474676427 322954828 173397510 993831460 163694819 266518109 163553384 150470228 773020565 751607086 141320978 723094064 668851860 807912475 863516323 702996730 699187096 291723965 22570517 184981124 513793614 631695880 583208328 175902965 665613011 776652755 449802834 745763788 893044321 610720788 123352855 883780052 728150488 625792148 884754566 799232299 133490619 221848266 488945799 609354233 464187247 298383918 915516654 524265495 393473997 855646025 498214890 947967776 331997867 181722070 909031694 973738848 390377092 26495526 57559075 173617211 10091922 870522315 938351429 624255713 453739164 199089950 241461768 909030264 329244709 130612104 143455574 430540302 532800132 873174809 803487233 476815851 822141558 590942231 169114204 486979663 495728556 134351018 245922588 840898002 653121195 222142991 587562733 659752798 644553921 619070699 757309854 665787298 190610558 997907702 563188638 44855050 268138464 570087329 729036751 483574541 93644549 195586428 636061621 425419646 819967319 92135007 857069156 979885074 168541921 264247148 734064743 192064429 893940548 108656076 948624824 824233373 90060385 712564603 666280054 518900849 730905098 764289785 639050231 91281539 837893346 360126053 463101036 407668691 571529830 618859440 354246992 597551796 867277891 397544746 971059833 846872441 341742455 587148621 53909705 221910758 560538964 701319875 777022613 741383074 399400527 600752171 575614975 512328133 464781068 136300710 457244049 761229353 25088157 375500678 36132742 713049878 97730469 180012779 432929229 535354192 360491492 178467206 495637513 89467424 192187166 928785783 894198931 241903263 102878783 472827039 922541001 842403752 517493989 92233484 999755415 698190167 56751318 500666958 335002869 217563 497381975 861965677 623390287 213178798 930796063 448918283 257207552 918834494 263091959 708995145 544220541 157893091 852135489 962519833 729490718 387413055 266344786 102301065 38540692 489634018 925005407 446415529 892971574 975051780 799472315 639072963 666393209 342691968 798835398 29755548 606702675 890500999 584745101 616460743 741513052 9608545 791801625 753992945 974981735 536822349 640715478 769136429 109071415 535995768 185262868 658974797 137388427 2129074 726835372 445283883 266019335 696686639 296927105 88330257 142762286 563016908 494663912 317214385 161105059 845185670 315824701 897563235 398816698 356133083 811306043 729935846 22221083 232223181 158072775 862391495 368991173 72694844 453440732 45184013 556581600 383117071 782026254 822488302 690351122 749476596 59083806 488968514 201946475 675885436 444562906 173455894 879520892 937665498 445372067 291393209 172098355 965282338 656135870 170427489 451150453 111233541 459195935 864054131 981515793 584183744 215857577 944182644 827921274 691546263 248173836 586164000 664141132 865326856 950455296 954452163 133238202 258571544 300449759 63794338 766860466 225963482 929276630 851475985 283793611 341011913 304968904 553753816 550029655 560144124 693142970 551416721 944615712 954609327 451228259 869125050 676112066 770063789 481434212 263082847 640297115 184968390 684414516 758455280 452122836 26990746 804596558 342130790 31202490 794722517 221288820 636375811 919062008 148684559 399418536 939255097 388952547 40488675 935668301 436050944 204138539 735143469 287759347 395198307 170822869 246615825 178962813 232446128 956973310 495857590 700732720 176790213 269000450 171322573 699647552 308905493 251053713 139842237 104054009 513282812 327400254 824308801 686864527 341119255 572834724 248282439 498642588 962418581 593566991 594545496 298290887 452730820 996823165 827674647 624370688 377852985 914431579 711839351 265705308 531033210 602179593 515956737 36849263 775884763 75880089 68063366 549052449 937250716 704659015 2616787 932614791 671723844 13797458 823644453 109295473 352756320 491768521 279530580 642635512 773656751 684346552 185634949 61333569 792260550 27470998 812126030 909583333 931999115 928805546 835974623 844290777 952391773 476868938 948276200 707492296 971675262 488364066 665587893 356839151 648819359 257111349 22435181 518641735 959771219 46366177 178667117 576901929 302596877 695609469 730707324 619214058 110602533 943642427 618333173 420667579 890491146 661479274 792565159 604161951 889685740 347542448 344735421 329636942 704684888 904443529 605257586 965087602 995537052 691836015 225321245 524886234 659940570 387313015 518255320 990735642 76710828 272851390 563171473 218128714 187371270 179174975 911044254 539987409 363357952 25136305 719598561 109647898 168499744 136037780 666526858 860962638 691676289 788186633 371247083 937972559 91940970 776179408 725516342 439257694 808788342 500962802 568315708 599404934 85087488 796824431 326178375 483371226 174855432 802131509 83613416 785936692 72979123 582118033 646458312 154093291 30704074 465428835 292855535 610415214 678249337 540758653 466570536 338091059 297389672 500225030 80210729 359917985 743258968 968985080 484691836 486772693 283819399 857579564 41085229 719009838 969373505 583320329 73202239 177231340 915650564 780071752 486536306 933553685 73069420 193632362 770218447 414672964 731949923 53928769 172565869 59928271 916167563 76883952 11939186 177066611 792008836 806388125 793105142 130746220 493693533 806664680 926168384 473006762 471308379 936111561 126594214 91872340 441593693 344178057 294065470 551174854 864728514 247721211 30202860 209727870 918054639 27956003 643777057 742686790 67817507 963920087 124696594 877363384 259456178 419856714 829889239 808861646 748047096 169567746 857475825 375701716 181461732 903569941 88767427 445479013 339401192 843841064 708055017 182358986 920762437 975730210 5088035 589009935 64413819 383773344 911132 114332084 160243075 240712299 833570449 394127630 66092800 809524212 615658910 830040453 106308643 620544028 52759353 700933218 711750349 796786004 802369022 592050813 66984866 194063881 162111150 88761266 159343435 64432558 869575448 823242275 350670375 812894064 278270349 417743430 630870570 101572540 780803110 18841904 290797989 581633410 696607743 800426726 833496104 910508771 63142459 842633394 985425731 289528081 906365706 839760353 883718692 393713261 504539158 25756225 510328619 778519913 487819955 394077001 366446563 838499881 950626287 353476189 338668538 496493554 267928582 489555206 229737501 505718157 910236118 50088796 420847451 918489073 695781911 138971199 459244219 915646914 443272038 298512327 856549434 418075157 782347514 111392025 687860075 323298950 134231683 631251875 190211968 582072856 587584216 730481535 378414994 306981350 740315417 726494322 643815814 24313929 148503497 839334967 300658020 839396136 823788297 467044106 769296123 450160041 463440490 412714808 936313145 832175317 716633960 139580047 616818202 90604282 425937129 812835467 518771053 906990984 645892570 909338972 490318243 49405124 195309181 688098339 671639837 420567933 590562811 782532739 734252099 443416010 167548066 696450215 185846248 630478383 892108125 721175986 50277704 854675517 913892015 261454704 115288839 529496137 17535166 139480396 198295404 633642898 100252641 247521564 954197267 791848027 291697400 223529696 342005727 164360243 526111963 32579271 682294538 222682689 199612658 194937128 959486547 709064425 739617258 30898033 2426136 65276504 29672733 987370131 880783655 314117079 815316581 726741894 470107887 621281806 127569175 521192671 702443845 888071777 409665491 419801882 469597526 242159837 850109035 612172640 684996475 554155693 424550281 962369909 723132237 119681335 597756274 305669600 135480656 665154044 91824518 656037552 364386085 405943547 66279318 797259012 344385727 279540757 712791434 173311936 10277394 390980635 894877065 957689866 143895734 464806305 796311269 940663734 1898945 272498616 146837581 946686955 339069066 285557044 13402250 758272621 501556954 641867757 439479821 550464178 864955740 503529951 874951617 635927577 623325154 318698730 781601854 82891 82708415 252630489 751676776 149628518 942857694 731216517 60435591 411238557 783084711 622957040 1941565 770283851 686929889 650004428 858308861 695624554 26591597 622207262 874113222 411686677 86525252 59052742 424508949 164647035 468528432 418411407 505074641 986228785 706084301 941753169 569137048 822243121 442549147 404650279 115693179 842770697 182788407 687793800 166241963 522557151 323677346 273249395 824579413 680993927 522213429 628254022 819934396 176846002 569295999 194121391 804608586 939157488 919433404 325760324 401669606 631343431 264970843 458459723 185591645 505261867 480706228 536376504 283001761 87591289 804568816 576939774 482373640 263465062 726011258 970157463 152315975 789860301 105397076 786448280 405371408 660973043 770603117 587708739 222739257 951552011 12794882 553877826 293404656 673140265 291047671 389373059 215947445 733141907 513272270 820112469 919921146 525416007 831137413 526142402 342357724 121989001 295486907 920820155 144251210 167587155 659398251 455214640 782976613 372805855 184226949 256946835 540031935 649181042 99859332 956370882 552103662 352081021 219774938 32770856 241941517 984021278 308371327 816233227 678041517 717548267 750285879 648614971 101142581 400749600 38816951 732110496 362735005 736837732 221266687 727628539 998836701 312768745 96409264 135545869 621707696 955584375 664996690 456985514 740600167 486214583 205673908 604206767 887405574 47962309 990762372 150326831 631090604 186840957 649902651 328017601 701441867 121863907 576424961 197237528 76166976 808044438 569842952 298965394 314751386 478997181 818771001 75989901 368691592 825381536 706492124 868333420 278687194 417223566 143506268 215768781 522936493 169227307 543078627 544241890 377427675 655308957 720767960 853465389 106348785 432378731 131658881 878614231 756707984 12769103 136350196 995027836 749139485 995863718 380976846 445334317 520869276 557861801 814453631 62093997 282980483 603642634 498059279 439516677 27463617 821373747 176659913 517264039 569264542 17828582 82101319 617660464 354160115 188950657 344719206 377741694 138637455 955772305 44907083 553916796 930871016 952439847 218972545 149031172 110493390 70224337 867715492 454988593 818263978 825604135 603203910 677528669 647749547 812159366 357032053 853209810 948275497 203360240 179704357 880883148 81502362 28837174 241071553 941912852 174442332 536734095 906447086 721164895 701486108 595046480 585195374 358250623 666382836 210881647 707518657 397725152 936254239 212428889 739805361 492946434 597339154 112301997 208821630 556290062 925379861 827371086 835128471 540294031 711454463 581300372 787983671 144013359 255560052 204878271 452273728 238843405 851996832 635422391 580227992 20504012 845598021 246485484 512688148 402562559 921458790 347039001 568292154 234129668 246552852 965002235 329940824 419333360 848401980 443371393 491820697 380698904 333046774 968561418 786531394 385124464 392679310 554876580 440745174 648202944 337119196 332467136 28712766 466071200 24723069 345799174 185301099 399448975 550890116 183010729 674939425 752754083 85120236 694898767 319522290 687854875 834063383 521494867 5735338 315324863 603129493 168407462 383401293 981888191 496283562 80799953 937551854 755313175 28633664 7064289 543613682 857320127 746226561 974726699 869917215 620769230 128385352 495802327 800317417 599360657 581660767 495117246 822362576 85245809 237206449 458847939 613592839 1266663 70756156 821622700 173565324 956526025 947566144 371241321 634282294 278891706 152779692 15222172 234823059 22917167 430478518 519423875 691220653 320890530 974741743 549834852 190563590 726010420 551161293 945508136 798405668 643327019 536227175 562824636 602081465 998691761 662865737 707334506 436617601 59289606 360909969 985644688 135617472 324689035 649869157 180428801 343344484 987526008 879807406 205049719 781434497 638721590 375844370 65762164 302198500 701241505 891185080 350356687 819671264 737106197 107476266 480745951 900579862 902913567 267363603 322212844 81620472 40559244 454709740 642003768 139348845 159836903 252700714 713152639 500435446 673959622 522115941 326086409 752286288 165865199 515024704 596932444 472588091 576772046 30360687 146884549 773405916 213758567 75020941 482300572 513901145 607599045 196582596 775360459 790028252 276665604 847166853 286470261 746954959 895598676 634997788 466554079 106902846 322108016 844077229 1960956 855508370 938884850 631482441 257335553 309777892 348097192 713938579 631705874 939547566 124538861 340872012 344996855 678601635 310235971 778692020 814285921 656128837 436258555 787898461 673644289 90429468 604463891 69521304 454725516 464363300 553116196 150078971 563460846 652698761 824853245 805590620 224501956 36674705 156149689 780115496 590976792 653528607 771183585 655112526 425800648 518044589 191767525 47535157 961366669 915396921 82278946 917693031 12916786 235822063 289567704 444662972 121761373 232049603 631384543 393450390 437559354 714082393 725687799 91768625 138393616 447891711 167472184 526120578 842210282 446158949 806078219 445266973 75635035 32956472 669954120 223594485 543330672 743464797 122600353 728987445 611175747 754759516 439189931 165099562 730420127 748646231 637605401 377831450 714887769 607806898 111737373 742816310 916233379 513004371 49034379 864296119 932773772 104641586 733100759 122619815 222364992 101746592 176738824 283351647 855943505 83200955 61513931 971870014 83071573 686752784 953614502 600415240 591373757 8635395 70179794 239845253 639656594 37270451 819201127 50248124 720687123 547037407 520517012 859715146 282750675 397576505 549045927 99075471 128962449 73697167 139401678 896198234 408949450 447437287 284159472 715214964 477917137 221466171 969960140 956948461 372912450 882706138 672336417 32089579 953796000 761916255 874803604 866165192 209818096 577204483 442394111 999370580 96450477 442257884 800904861 992653374 624740425 397243332 235734267 3887520 186426172 548841560 110572557 658275493 511501859 832491548 612300642 830807770 259327864 505975866 643605312 902342943 968870627 49586375 888504462 136865734 988120700 893264823 830403372 57949042 52946536 240787342 457836319 687319863 266978228 525863589 640345676 912408884 11836716 533200550 184273253 898518760 863626220 940888329 225031545 748940726 287997922 988938200 115614613 252340782 615753302 296206256 934297218 819695529 200690784 547510092 930742295 756147290 748992639 594997975 273828213 917135484 491542001 373617973 570921867 800310890 539590871 895687467 229550969 38758305 102957804 454397775 860492928 709673880 366313552 337899974 447091008 927671124 717125442 318058326 804860727 885138508 199458463 183307509 273122955 457847967 497356251 144625884 595275991 32299391 53973601 975759247 869979029 963931653 620768701 882429561 919606572 920928385 488321156 428743870 539304998 719564578 477955939 208168745 49943845 806003849 949383076 942385123 976165981 410347765 974996477 420131990 984496875 12661845 979223959 843674577 145201635 656486194 352456021 214549359 171554372 624801207 154410917 345786784 860896357 712170770 363626424 658935645 816233590 281893045 4274753 440354019 517628066 858371087 954763785 154157672 190102988 504005960 380757038 478178088 599973744 121341898 596399470 153586860 939496273 713284661 956573738 768013068 361061178 495198397 291044027 6948748 618311975 477810424 985523684 447069071 882083603 933398950 844191284 173126119 876343602 456065040 847023236 330476170 398789979 179640515 41624317 180802057 485324009 507411506 54138806 871291017 509164679 632912839 643360942 816445874 268047999 574004101 258815882 944483429 68267360 191760518 303642174 522010951 410075013 997668393 23079733 464051574 268055811 224974363 683720102 965650217 325517436 876463220 735904408 174713760 358273280 982313673 394447807 100910665 980609652 548084070 901316988 53719784 14902465 742945197 321080916 233432864 891136093 423143044 360807033 755270931 766881933 400660547 456945204 687297129 999059059 984041590 104579979 53054399 412696041 672376145 124442891 156451567 291123612 240772807 171794368 984451425 332789993 394531020 169414599 568663448 282880947 584677408 451292157 505000226 244071832 820761174 8693367 405370061 655309490 438963969 222367505 135015203 508010409 347764587 63844293 913282424 336360545 396258505 568315475 430129021 235520144 614743716 576510198 58911590 911778649 159407665 620223942 869896402 914120051 7189784 718982602 678802165 616180766 153477767 275542879 802459912 345141605 888945152 881458974 448061906 613593294 546102246 186274036 500585641 426041410 918498843 486717236 747215471 469852885 384303071 208550229 825475090 898608527 815098247 121260333 905630364 113480606 403017101 914044606 271140987 352913576 353238631 783481152 441331207 146597812 472299844 905539227 550746029 861307115 644579154 109715913 496351708 875890417 695300358 6086140 625389167 133943284 852283805 849296485 115709766 687410734 252092430 113292160 238601814 774980329 323716861 756236706 368565775 165812054 694793500 878297205 430786542 724479077 421447858 89777202 819642047 941773849 3976313 480578094 489276451 950801470 392254234 386456526 80568021 867940020 315653637 483172010 84787044 479078219 744389563 385733402 485401569 818048930 468595549 230327343 864124665 481722851 82216821 157720569 134236753 700996954 848712564 451999617 130497907 538117319 192109771 30080161 319664434 29870897 697806769 954762454 468103621 510182685 395523 568243796 543577535 200683481 929736370 404787894 317360131 935432489 346282973 140241346 682594278 888516267 564723802 538735685 990170503 479976868 338541199 511978913 785603065 720260377 156337589 633459072 581323783 783899269 132141706 435196286 194194356 544482137 603547908 912735180 927421822 780881197 338820621 993727812 916955203 457050727 130969729 851353335 227272683 455421300 946538984 543952843 593302605 269780369 342062390 771621397 575041281 724027758 671778360 291222994 535932293 374397815 872911960 175248232 115171685 517589100 750489475 864269262 812736523 515541342 707343093 527921014 763790740 827230629 566063839 709631037 939707316 740412744 791560327 974234843 613297157 716109117 262920312 292538697 868993033 821003793 732955699 50984128 729257764 394902528 111041274 836837522 64681693 982444457 46312827 141747727 719679383 599308878 651697341 89069249 11885043 820828472 389331082 92253992 736187354 557179211 370696324 603405020 674484091 234364994 707896670 165520161 444180029 873416396 802652780 115779493 671609475 629934834 759642929 827734345 849257971 50898483 702062706 786356393 146524641 984455273 6428262 231216013 503683727 568105861 465892282 761764893 752317505 655177821 256646114 236487841 570521071 844253403 959261336 35017791 263696655 711017581 207921526 969350169 541601088 386750622 730327142 850194692 934919331 336367318 935244304 256812858 514791341 628745464 312951542 384883892 344632906 452163668 373762936 888212446 865771335 734773119 890907601 341731150 57805136 130443068 722616716 85235473 389528579 382900123 495492659 963712624 241788965 3780184 459167430 404066316 384819653 755194838 103523315 87847944 17199054 226369476 66757426 80632073 342377908 131323144 434030495 554449908 182598669 490654524 842249471 906730305 412351891 891285063 60698021 670153449 885495556 432341126 130040855 307605109 829473602 380339901 684752894 542004653 171679208 161772514 64501224 786012388 271875556 114138099 609399742 351228088 947823019 613423983 709169956 867124834 785563740 453393676 275879794 553907945 339388604 270866418 749798349 851471937 313293561 503523750 252594338 412032231 430343903 756443164 848997520 625151174 50858614 754895175 509382458 77252387 189924368 117086184 856598491 225429217 526389901 756942742 872742628 948389495 77689438 729023300 808830829 646400814 511998893 404246763 1634215 186643573 196365186 581855257 398355774 179007626 774713100 820677654 905484825 355551005 968938606 457608198 650026491 978707733 376254494 362493614 810506900 490760809 820259621 120554984 210659290 871488964 373929042 229719370 469823504 821714443 215825278 86376926 352319541 218582036 454077763 358632803 813385311 807815408 994579461 794850190 430035034 502396522 162850237 408358084 41047692 470883013 537137046 156019034 112827760 51454273 798934300 439654131 784121487 431654183 564075665 202655857 334275189 160888187 921355582 101312815 52543729 52645336 875319457 724864212 422436917 67686015 626566393 104070514 983811723 388519896 298763883 44457453 418931007 191229105 101889096 109303129 820393456 31290089 244372041 540032791 112438797 345067813 135182987 572215429 872593567 611989489 407497432 602223593 134465160 387717645 662059616 355474313 34041177 283400700 58541813 681750745 321652946 802730832 310577920 438730414 428595418 256933673 858068326 253276584 740450687 986944261 247315627 455438008 869113852 391214029 990429571 400590534 912498259 444140224 339104323 400589358 289121130 496578816 477151881 409810624 509027547 599577101 350024026 151285412 645488649 155624205 657232453 630366322 235165386 353049246 43520973 120899923 943853020 153334129 763977222 485466171 852233746 12382268 846666886 564105627 612715905 336414835 154018825 959081762 763522946 539417676 271651010 702149070 804848743 175302838 900504499 778332189 944738093 248855943 953295341 998066014 600623195 107137043 519607995 883633267 233358758 203569330 561996248 261067505 538009816 645039885 169594664 303896030 90918903 230792202 2745802 431598166 273200726 65245646 853873656 768203575 554578806 641360872 653242869 620607351 267711227 394787079 965345699 234042124 669568909 279088684 852721463 898908579 840557068 115735437 146781357 568587481 594413404 470020238 550034614 196027696 308995323 264752035 719691569 259550766 227657880 744299519 509788049 476929967 16911438 309727257 828139012 492573468 607395046 316197262 751795890 824637150 111862733 375777286 788530661 171958043 491197591 972642108 926622166 692161035 130970113 438284821 699198990 101577464 682674077 809042264 754617918 217689002 614695367 244265129 958719282 937928332 222205517 405137505 296239458 302177761 652507073 869445994 853042176 551487999 229234389 81809549 120021258 55264116 101531754 703580308 602586106 928317630 229924705 981068950 289328312 716626907 374741934 282365147 155096451 233519745 106271949 945967399 80266438 444268716 736547056 496951043 395384555 593319827 438164516 636856490 570743618 72215113 331901771 721172164 640029891 257591210 105280535 376459858 768208333 163291488 598602134 516721649 575501420 92177566 699671099 102038355 708549216 107570720 563973198 773464895 912550686 561075259 510374310 610848157 110335791 310242959 712380005 939048036 888437915 748148264 720565911 958955280 860037401 52205729 237596285 121169130 760282536 610516841 157124082 872880039 897720355 284635779 913398906 143831296 27987813 615030906 29180875 888647533 195193343 20231816 4150793 458866807 578206401 42947108 2601863 441827846 79990946 4799882 611839848 985598747 902900978 875022896 162671362 765975613 704063446 689427366 521625667 305589828 750904848 812323823 562392424 972613309 190456419 740162221 837620592 330367063 611348736 873036049 854497052 794649212 789513433 114477755 793194488 613303815 505187837 157098864 887932972 539401306 728085982 243180197 773641917 728039316 411992052 769856164 924629074 346598211 652506276 768030856 279383810 858154268 683051503 569013661 220001413 551358453 620618883 610889934 350818217 394035757 271586766 90313125 898205892 88051488 119033683 65796230 790681777 449492852 683699012 715605533 892594280 697316347 470589125 48767865 129900109 74532849 204652925 767759740 741706026 52768806 80358863 287628347 607179539 994810568 122525784 229388198 579802568 934502809 437521932 462100400 856286482 799464856 125591421 422801764 795078295 766256462 325728592 239916114 797969421 637885285 642228104 481042796 707413481 839288124 779871225 736439354 611139091 370729223 202933547 884290118 199616896 639853520 353983515 179265551 965974854 484874093 889780529 231024790 474878798 364409423 303364362 416236942 689978301 748606056 321246255 228382132 860970178 701657239 455569707 691622462 828184483 979620393 453731545 517558445 70021645 608939932 213994338 881087822 697698784 367958993 66879787 217227045 327384455 803036011 234604287 208429973 885080603 98447336 823806399 155721103 453352469 746467317 94736972 944254967 236046038 270012503 133849003 55643299 702637864 157124673 651075179 250764202 794731250 683977758 212240116 432834099 846010983 414696916 259371756 145721260 492878975 440507172 314321678 39858999 906056149 450114604 615551090 139154250 300743256 766977882 773425693 267570281 254802330 229122230 393693653 307895451 72623246 64564816 921628898 908991509 417766487 127342103 696284341 106267714 221988333 667107727 380722683 688156567 460915162 661355968 77688496 724635618 769398548 651302125 302670394 50968835 441750370 389931157 94620921 743794004 107277787 217154212 228922743 560614008 726615192 536525433 912951353 869967346 329430923 174198711 401846266 478380312 157140529 294757027 260051703 114065533 405932324 296536884 903301148 594628499 577375948 344942892 225174017 606698323 253151151 954982310 964476289 928349804 893477281 797684030 994083913 39312777 884690596 143196140 444759973 823057793 879755869 970322116 938821460 595893337 285082599 936651220 560001395 945056860 101282544 149038038 976121631 985747047 334181439 911935617 896494963 285633536 475665324 889051158 338224241 601614594 700941408 828007078 663484017 981495756 616383471 442823147 762905900 993719444 209675921 695977693 643201788 899851188 324884 255603490 87455041 439782370 344835521 156762942 776720521 19916854 892198726 337286309 695018461 495967192 620909685 155556352 903606960 628393920 264305809 522200567 514152389 833557794 118026147 627394652 71587659 907570139 903978036 726025834 178802344 331828897 226194828 961841024 111019150 311953516 442120705 841341750 401638236 473633840 525472136 898989125 246045094 183361645 183152574 682859874 247228208 854666534 432158461 492758588 419303042 713659408 17713127 215690458 364657416 300478706 734030017 602530609 559074913 917194321 804498537 858568663 676085715 368682647 417692855 800067418 195878272 78388263 373205309 380031673 5393516 66170220 918469081 635639768 939547492 835069893 145627926 668131844 793134791 727431646 185042471 119151588 992429825 478290036 836969199 281497024 417364553 951774837 107276070 385086983 261647105 633816918 6823862 925022330 15549271 175356130 190802026 964151341 865078899 632377164 166232366 388427102 429421010 190617014 867305246 250587074 888231763 968868541 508462728 296146401 937793430 353522481 817607898 707335733 602580085 498201678 707759865 311134505 479709718 226869718 155762517 802566807 625122801 24401852 312430186 326720537 625209318 219570129 119354039 200677446 963670644 597517420 722070894 654557192 989601759 856419340 835479090 764870271 197732596 728409544 277640582 984864017 897423337 243447800 597239977 960789671 257761163 284460823 700099361 895790827 875654896 206197702 959300414 760673005 19578254 422598705 557449249 941929575 501978263 954381124 7399743 389641917 797807845 892321549 738316707 299766814 81197769 148447096 203124953 524032408 862600320 447602173 728697439 489341809 166787431 621252886 552669234 798185819 115719845 971158425 79537264 814634722 899742918 487423865 723309516 328489026 240449382 911579280 522653021 479760298 852532183 849936382 522855053 348554483 207431640 559325610 850580115 204485753 983368964 47494383 147278938 203737979 57194874 451951275 144484498 370567366 63410470 526182316 802849595 522423939 863347874 325837362 874877893 155129074 378214344 420695821 161199357 341458997 974534974 677342928 825507979 641413219 851926975 324789666 730330768 285133285 527569524 99778274 369010085 149614989 571845714 619228700 217609385 652457930 756640447 960822460 412571600 72527161 963353163 935276767 655356032 234256562 794632062 261274996 320458733 490552146 22381761 989812555 647656761 561890392 23967429 116368586 929914570 684143272 149537700 629400720 730905610 163615251 904776291 480805941 640866186 648693115 516935419 148278635 417683139 269530116 463411520 107547739 320986307 497751404 545569213 749072007 313268340 696016162 382651577 301128429 2866488 448966324 385082640 129133215 869805209 383251713 366072110 84847404 308129901 460585527 516840453 745862500 820717041 737445615 878414315 585567032 734451472 118611814 582106864 213200505 187651430 498100501 730498408 779219568 46188317 529169595 433122181 597445093 136260576 376553573 452675026 621763767 604670832 953859726 874347929 754095990 353570386 367544927 703170714 528728940 620155076 992955181 156458449 518847411 660748485 378118507 731249869 682725070 469360984 356878777 715064751 224208363 86964346 927119419 301736253 67915341 422071016 65694910 645680825 491129986 615653309 307825702 590387887 831794184 769397825 635627534 351499652 712060348 421638294 73257805 832413945 321858857 381001193 387897761 103455428 833258959 446048354 246994656 720642554 223766274 309962795 707467978 571860098 104332638 160076595 903297164 437370755 317657175 504938686 357475507 986978314 707262033 641620194 314522577 408525925 993910736 421568150 124635157 670301529 153399188 103136177 236634997 664713539 184876382 620995191 361196491 691842538 508414900 680049181 33131367 302302266 337634210 499668575 881697742 343626037 125229313 8189226 781843401 422976642 469041545 373086806 558457783 441831862 248071783 254356615 668669138 581813071 941427252 138455010 817176604 994116331 653844044 740585939 506346873 975847757 428692096 377562254 548629042 908851290 974360028 406567913 303017757 305386437 668538038 612378613 18328368 690054700 533057885 855539594 979614965 32550508 194856906 403832891 340791089 99152612 371120980 578975638 152135304 982937071 72928329 750196150 357378221 426242729 771968879 240951422 872316847 537913441 315462870 39840150 218580427 458629730 490137701 697836244 58651067 936815767 100365510 484018958 858280820 521777735 949395658 567833659 273592692 358080736 748191187 960376824 241819072 292997800 684685835 253893965 456065459 868966410 641402423 162570853 215992844 680689421 862131926 364647529 574803006 245938581 722152542 759568483 447723658 743117686 964830091 438174213 651247766 288685531 383388021 884843569 920801561 165825786 398042123 328016156 598322257 63049886 786735185 983953598 468771401 63826255 363997757 850030125 357535905 81720209 99345305 175427439 960866881 719540032 723740511 977275579 851331632 369211910 656453548 901612303 218565493 863817125 751041695 560972995 600682126 880502866 621231681 780257001 50493839 145154143 222022015 689662337 76696632 668726949 615732162 189260200 200802110 64339561 550743869 721066666 395631379 509602360 950946670 292493382 400312118 173487152 384630300 292152108 739523525 312795725 782810507 759205558 11962836 371661956 60825902 87883635 119006569 230034813 323148179 86538158 176662181 930613448 498156459 116084248 164983595 865637640 607595361 524396688 781733098 799682969 254212859 92399132 106402647 140081515 849613974 325321538 434979543 884385192 471607993 584013240 172896150 127569904 334279902 122073803 316830291 650129922 614181049 183978999 332564611 283075920 23455822 380358244 701659644 638642904 469211763 363576581 571564609 171628940 802735629 212049071 590957441 250832017 861507718 950434707 899821156 832315097 477009341 438919793 105619766 88888432 233733436 290000211 240467415 912378292 721356388 107856636 388859145 844607177 622665316 916662970 688673433 343498107 983394647 803396992 548748710 708578086 575209208 595008715 746090209 193135319 749395431 841302448 851810799 457408922 436398635 603553157 151412556 74572370 64021604 899706605 814661605 201022985 216700023 917674263 197971078 518956256 164591092 19306274 709741588 571427303 106674943 120658059 622499514 263658863 576685319 279205410 33316570 383589656 768041890 209650817 490184072 244708693 381316397 771925787 74721109 581238477 390707283 193270528 326653680 974300323 356673755 36638058 113032057 836345816 855131164 174819569 275956353 689537555 29342134 944556433 395549073 849499181 781861004 755318676 394529727 527730654 161128327 354662762 503090934 608383011 41038575 854126318 261007477 960249248 141701424 540753355 160524174 561584141 108297019 815048529 940508568 667648238 120586899 237623693 43016702 668742171 179380424 447621812 355218823 733859161 321980163 381211312 617552123 813592768 244851798 688811225 807801654 635557766 60440435 675486776 395036161 569464121 674743500 166786990 263411658 809752225 207238168 466489336 531363503 516394000 420408247 795459259 856160361 223532748 145986125 275600541 15199033 746176261 720168646 293462804 966919810 146494683 266902796 251828725 744716987 930998629 768688844 700089247 862835019 516860361 278307701 419474878 627373845 250999127 239080068 101563504 283375755 725853370 982249334 944839584 147161909 514628466 216918175 703688828 399039948 691102202 618582371 830409592 664110900 374771838 905624368 907761753 546138382 818842680 563063972 491275884 860081836 419271453 424271632 326160557 579394784 578896469 616605529 357437065 475551371 249875923 124494694 48290607 820323390 571696984 943123719 77676060 946380409 28044953 912801273 255409721 947277169 287656620 957686109 774294819 372355382 292435039 567531027 822581334 565510936 609903366 736988040 893342969 132545275 256167717 343972537 159121602 160126017 604871125 520988953 636547779 41010712 704137590 164583999 407061565 200372582 498561513 736672654 466799105 932840156 695289111 661459183 175155532 608222607 974000104 406761484 261747914 592649056 978472974 818910075 108213183 817881423 148555996 740481233 494873804 131911416 91360116 345870599 287651133 971613153 738834391 145626505 44124480 595847669 89446046 230733602 309445340 577740950 45158665 426085516 4741824 364066799 774976428 473485862 235373005 755841950 103653085 860734015 829693542 34480752 152758385 258455701 466810355 92857304 40573831 87525840 846274087 529860704 143790364 994114947 84658697 77970345 804541783 18527192 990332057 797658204 311845833 481557642 95666585 202042025 480127842 836103280 280531080 937449108 967367893 465883378 636138054 690362097 61204613 903909099 764100950 693612516 90866883 202367110 767506617 212530266 167590748 310018228 240508915 207349037 894807513 172666965 751888893 885474020 301830014 261513048 377520847 78598672 87087958 349118617 917384575 183059863 573823804 876189292 488821477 948685716 399469273 910601632 923443662 950102736 784234702 482146252 825807948 218824974 308784968 929669596 20585586 636945062 332997222 956885983 281520188 539965940 567203592 732860572 86327821 513498212 213879789 779884521 426011257 922475681 283316810 266415320 952000365 181897974 897390186 240934466 729426421 237852085 750565240 704282847 790825340 499766040 474828922 608288614 61647386 937081806 261168288 100246379 157966848 800961049 475796573 1608964 548967694 64463441 254177043 327641792 4142482 92585788 961541454 298663652 97258355 309612798 729879609 410849456 584397950 155041416 880934109 395381763 520711778 34309538 872198885 457026430 108808808 957643703 292551129 505603367 732913797 163619926 468648527 406761672 420132628 232397873 299442423 904056505 944066927 606113119 968335618 267270902 823302201 793787874 992540954 615245279 840356250 946402504 799234928 787548477 610900861 682923498 934894169 670949769 275837036 502548797 504614496 656038115 63002552 778176503 249036829 773007574 541527701 897593419 324880261 506850929 747933256 84707487 99700616 950655083 809247552 727454946 216850046 857667508 985039246 653847933 907916714 637027741 10658068 345432288 547446686 925816811 194114516 87435428 525070773 842242382 279842633 817086916 899029860 379080936 458563995 800798832 588512068 538841509 497220821 126587052 124347787 902433124 553427143 372272348 619353596 842338333 15171122 608004902 135547364 855130214 390117653 260953212 735526354 205938939 237235419 715486060 804849668 887641015 473025635 478352919 271735742 123504538 608790434 530293194 506684253 650548532 651944021 964408592 308402820 203589273 215578344 863633195 322433662 430779339 934645664 344965137 297519551 759750779 223551104 695703914 587882140 648618958 698369543 331622308 447184384 783441656 486645013 486374978 899473490 291197789 959377946 950134190 156439581 999587447 612407603 956106499 531388994 366463859 404342590 24506123 765136460 230371628 975580848 165960199 308446852 964907070 748344297 635567676 179916217 619301929 658515360 878564225 213566626 196657759 693457825 57218343 820258460 694399742 784657275 926498761 757142329 20213846 507555893 256752343 889789078 697826656 857505968 927422254 845551172 24039863 462550267 79630887 494280762 475697960 955285313 259882852 708463966 832648097 836500126 497399374 840566755 156894048 260577531 548443854 373382192 865666783 259619119 628762409 704254174 657974361 223616086 905588372 276525627 767485559 852749471 105761294 8906912 820007064 450783037 84508824 590626358 441806289 11027819 813253953 19916427 578654049 384943460 99734185 290450522 103957481 43837305 415275794 469812987 798126059 61674700 222314808 463915161 30436042 635027089 191102534 35076038 161110667 356862772 543336625 716330585 610824610 572339530 779178754 668784121 658268549 875001240 32081882 488873508 40234146 462180310 843177316 358945141 293900878 459231594 925090640 283838597 723592076 852027354 919314175 406285474 517225501 55025353 973571308 154091009 499996157 660556239 827015689 328582423 272620436 717218857 856971937 749310185 340440782 578117347 408430223 777399759 546489812 517218564 43383997 599969929 989639278 623138229 221934580 352100957 87734773 577562450 710984412 799709090 663686352 688597952 266707538 259753464 208607479 261940888 885570783 561041258 725637069 714454914 955150484 149518962 190840684 829475442 514499103 225186684 854800617 923090540 607966659 315437835 744849474 305257402 894198031 175966559 776664701 838757391 443754501 981582509 259756931 216251080 434319992 782069128 272774374 456311403 907785455 152978801 379846583 928385301 441064404 153169039 768763886 635929561 112997600 247068257 676745995 683219067 283390691 384632771 765578057 795310174 569902151 863437837 842338583 759332018 575456638 790611704 814494531 632696310 105158475 666884109 343645030 858345816 64933029 506109320 311498792 398505372 24940450 435463884 865215097 693677044 623886861 942442323 390129551 17541505 833039129 21610567 991436509 7073723 761182330 659779132 45235966 532693768 75911861 594651159 962676213 713173702 3164103 639202916 858827285 597459601 76551727 957436533 502480118 527699619 265010872 724477884 170297387 305951474 269987187 799238095 758369078 763523125 868531697 108333393 891176052 888916179 728724391 917584014 388752244 472452572 246573136 951950744 402117585 153505617 109853486 445097056 583380512 54069378 318183178 783329493 291713617 792625597 234739931 288140979 854884969 450638252 784309674 157242064 690757691 651672517 316981876 131291613 606055766 861507811 123718933 900265558 145361573 28062018 76696226 481437973 412934775 916585741 589526831 397747101 81419927 440006998 774380053 860082322 911994054 986962233 251730287 160493989 942384993 813300352 994094081 473674575 492676932 813973035 493367530 586481637 831394238 875258224 140428217 338303879 220437913 171213446 948121944 35557180 507175914 60468837 166919097 839091514 600385751 440516461 467016251 798595754 704935452 982466149 114967615 863866708 169257044 774469842 414059753 66665947 121949952 862974318 467660751 649779799 217615771 634786092 699222125 150060510 428939468 513180640 229310287 76542675 621596270 581157437 935598867 223267870 694999047 337313757 149514447 324983493 654312751 864837030 650716353 281134113 380740686 261908818 896274690 302731310 149223932 183173437 27656802 812353855 958622598 772157115 108969859 9543019 963688439 449091735 53729886 452400476 768780926 116558522 291035092 712686287 54259772 905517034 115423579 393778558 161414325 207363311 558193663 105298185 122231004 304995276 486348294 331740476 13183889 947455057 135034536 420895687 95296719 616126526 108366779 556276847 76893515 508516219 860578611 299167777 742716158 847814640 242845664 886083497 514581147 873444617 749261923 858932826 204874475 263631860 101058245 316831636 385305855 148016527 7110283 643004959 55786895 398946708 354417419 383178726 510540935 663558925 990911695 31776490 321276624 75680745 317949289 317752125 82979154 915613457 242108143 860151174 467569652 863222068 832376461 385935576 862857436 936469362 124688174 787156830 930157000 562705410 635380645 739307759 445687568 917201743 643805455 397600281 946639118 159908796 738739064 217606286 550040579 470403684 275697616 805305065 603069653 123039748 708756177 830995521 869906788 638147405 996081690 218074378 792258919 627206547 941120926 446008007 84760123 257292095 794074542 896395242 182490398 469364248 787953185 812256272 314122955 677677019 623477031 431634194 345373312 818710073 678587348 960611214 549557811 352900977 445202153 221875022 359698085 745631093 92425495 27980838 685693244 682654247 441594899 360140672 308077999 937628001 777268896 698554029 96865403 139933880 49719202 79537748 978188973 980807027 262498524 767847425 415240124 136681080 739193987 262304740 118176086 944589647 998209888 851318573 459300217 918083161 19014240 232557796 514252248 435102012 44867713 595923046 426570237 258568976 674744586 523718113 913241173 285030007 434862712 127915125 109185287 395060965 688133468 983794942 164557094 433820008 118432984 554092147 733041807 743416700 581391359 190026122 466359257 796274468 513614302 56935855 355716233 488399841 647121417 589398400 309983649 991554813 552419849 920412758 988782913 151708671 230568403 30197947 618056633 28984829 915031270 209436502 401370461 590302822 814527378 268600390 172668743 786780236 640012044 167671575 595868776 202161242 857392852 570102573 795682857 308717563 930373923 18818628 499756556 427277868 380417703 910820072 872437167 329759130 427448411 689796614 68759554 821282301 590361061 428133874 313687782 694403739 871004270 151215991 74050199 983705673 872623978 748123094 528536700 509528297 436674852 274365461 501712043 703092174 509206774 972449004 146707675 565491208 800704150 778528514 396331363 226115351 959828239 367017939 111523395 424225485 889431704 149003465 957433846 835433572 938645847 524925971 742824021 361400627 772850916 765572853 244589928 452409320 999909971 698879400 622617209 290380924 881039285 855733597 49615353 424867306 670115063 232007870 737951009 299646057 432877522 94770773 211776632 182233022 929670573 472931515 912613815 950534001 622208396 2456254 254171169 202889867 486792792 113340007 188413310 257842190 462770749 951712799 542901368 751356131 159747206 922579488 425791188 721719065 702855819 706717071 523827431 791778572 598794578 528198002 694353963 243833397 132514320 981935011 581030327 481036395 425834492 807898832 32038263 620187686 550361443 508199382 791771723 787252227 258734251 392909251 776302663 240930687 282545379 968905690 256635974 801823760 167165126 826143840 885223962 831713935 792332583 525986993 229872361 624853285 461492103 696733835 536426122 819262941 501585033 700190643 10500866 248381632 355429417 33594122 548436797 257506076 104123634 491920382 249143563 421038064 37509777 687854309 691098225 724888152 742319055 773336529 782240976 629784435 575891100 893293410 286187084 956567841 68831818 289388714 389841575 494775085 744258402 625480393 55685911 862754633 180816935 147241783 525080214 997141499 443309923 15646539 379365602 924165377 282760040 314448511 471799165 986960403 102565941 90809241 942041724 69218299 348100103 769697049 787908495 43965664 379150042 873520999 695217738 944024690 840852975 634426337 751985412 846200916 568032570 123469646 603450347 478558964 208291384 999045051 449105554 292714990 203532300 813532734 894343072 524756991 678554372 808622636 532260372 99117706 863066718 248700493 188788823 253280799 813452678 72816952 809123960 33142143 486744333 171575523 770022510 307388899 889541951 875821202 104074894 743743070 675469000 780141270 801684155 21863323 923741506 802938241 552181898 768633566 233039213 378393501 995554343 855616806 209054863 812632909 381288799 674347084 925739345 40032238 627239626 176892977 842295511 652598990 911793495 952279515 445193046 352499758 399359632 439532779 976070740 940227301 187987333 168487243 47230685 707865263 589109433 606305072 614487023 47143813 269275528 745116592 100179050 45209869 560963756 713807284 850815625 906398740 16663343 347892958 270543856 418049967 791652915 649741866 682288774 176871212 128603722 478278164 372635664 479884608 929993684 574066730 501809098 666013732 941251497 602889123 102497605 332881526 393703505 511243897 728292854 487050978 292297 841194950 961900406 188431187 861352132 521217493 441786768 144287374 323894042 781896597 114605034 88119363 539311885 364300016 320498375 263925904 82312689 29641330 766748717 373483212 690129478 359114917 130565874 790654692 245905800 415149223 783696075 305309550 276039218 701260942 536439585 567385987 30582679 65303747 815406509 981079658 981267584 406183624 650635609 800814311 885993649 498438668 285979392 182750253 224413244 367319608 507866776 96799293 720201215 365291262 914610278 347852153 904853567 566020481 285381676 265370645 214318815 946377797 398623194 752594160 833190899 203197500 386296785 89342626 531136563 309767119 449205934 209179248 872720830 946717798 860799693 236479048 696771352 901166948 571012225 994106507 190145951 603974241 827005454 954511554 554760993 539805153 638832352 13483719 866035138 868036378 748395547 769519064 64654234 934755537 222983665 575003337 440836440 382824002 886136702 404227322 934593463 813062437 70933045 66628585 84731268 898930676 929092355 444237909 406643427 80652100 520039079 771949056 219347016 576457390 217823490 692055324 519288654 711868398 737578911 812346380 88767494 861626444 49881548 458252809 641146493 457899218 749102566 935792949 224708040 871099477 637727479 911796967 731761085 415859989 954629411 479734892 758897591 129992686 622160313 818302026 8990909 119083856 439999848 51751035 605257880 904681263 25922476 906355607 857810105 899587591 730055539 27884833 665438441 285017009 908407120 150659382 178683338 586587567 123822547 963712936 555742139 276909608 760819247 551033506 983761874 16812112 905919496 720609390 140870918 704324001 236491380 89846204 692638212 519063471 232112395 838733994 884981593 876010417 131554701 552420636 152481506 987043420 350116310 167441342 560299008 420564040 786618387 848828959 217778527 879990058 411190206 9853205 672170349 965532607 166384106 710247613 28600130 955899353 507668930 521577649 430635185 590458382 917478323 190255344 599313492 327011654 798601509 927611577 181915400 823821782 445861911 714347610 290987885 677895180 703983073 198180355 160568270 788569363 301419128 506675202 949924389 883814976 835196347 771612261 691468092 223704690 270537465 510840085 758378184 442150903 333905648 727325739 706375742 515661545 39148495 231847829 488455248 527132611 108109807 891496913 617909707 729275093 871965851 103342936 163467261 570487158 839584820 369975773 30078988 986426564 457598475 285364033 883868669 585064622 59226377 609601058 480464220 975206732 903921222 702173137 490541310 947711210 944201342 272701335 839242109 189622018 13255618 854495140 689937616 642282272 612780155 564027312 324946125 654657993 665168037 123065817 981102313 429891998 457315804 901126723 110020584 428424495 290743122 764860250 960732998 950699554 688438591 979819650 297119405 379081881 201600875 555340257 102039872 446853964 780510987 567692564 221720894 431303108 440472812 477263543 716399799 295671145 932634250 15430501 752396102 123139377 885832896 959515865 977208983 416940536 343560053 798274955 291141329 261178395 442398556 887815424 588768108 552726211 566026328 612765501 198330064 561358230 341868215 468878127 820395451 920733667 308748554 697958576 384572289 723679397 293640106 507921195 275342441 235991414 785953609 433601997 51361102 444420755 208913566 679167019 134845160 537306386 101613898 90482559 99667571 999386574 372314547 337007039 663553484 548702045 467987254 651285670 905952787 27948988 312611783 392154291 573128087 600749696 356450889 71369796 867680613 145925336 510223435 737289149 615177171 522689399 873523753 865031914 902073230 533587957 211286944 668546876 213611547 701543810 292617715 236015164 821588786 99949917 390169282 927383495 652245829 277095118 324945461 44248846 688515826 131732142 269523671 27801849 22586623 517082791 780206764 507781482 394003067 836761113 405144155 507219382 102121080 863781847 740023050 690941223 853486391 436767065 539964046 627262156 958747238 919360995 354254730 461377514 860931262 62622131 246116658 309926731 484465300 336819842 982447152 53435547 89848202 747770526 46957128 225177361 118664418 758384057 88534038 507043121 253088 721030115 351069431 907598859 252059625 680867658 213895684 472817378 138517938 590607227 342376308 626360556 115580352 129721224 624638672 17259360 41747303 381756046 786141475 998578325 616530079 573599089 546941336 779383839 138278984 322458014 824355061 671097155 433977503 77043791 388535510 592390278 701563044 209449918 846086006 587377730 443021282 64147768 724528069 220122231 19312256 628442608 716809632 358085154 248265224 663440093 600337036 265857531 520291605 394796536 343983329 781775870 850306936 890891223 966379648 951731353 30708518 661020661 553549777 448595571 966181742 889098077 301689744 765418406 131419215 252471382 552838331 47073890 218577217 174096669 958222129 672105035 724613042 150795684 224907432 311715642 645779989 932410057 899403449 884482356 12104968 60202570 168876870 726653676 193282336 416236256 371820304 902540928 915075463 642537478 620844142 589841222 530530631 528880388 134556660 563655266 702185899 437088336 513537220 139111496 974796260 720081578 290262502 28513121 62361986 682580219 24963097 893767158 288234391 632767311 543018232 159655604 357469587 168398145 29840194 418548207 384846453 750816262 148583183 119933449 225477721 788894597 917862053 16837795 380385908 309876208 288848183 345985857 23659349 567213362 515722740 330207192 300223014 292172857 783319017 437747629 398278400 732820194 473460008 37244600 749356691 782530480 154624261 346438505 124854708 380340651 569970189 785676739 193357141 324449952 517148733 802631823 93705090 511829973 176972159 493047807 334130420 934016185 625460332 99212033 609218721 446796144 298954524 280976734 814929301 125409645 681078882 964527639 722714292 425924992 536991179 348459237 710355155 866697135 60954733 497847320 302626542 552131718 388111154 935804992 515371170 60312884 658049874 826533870 603244044 132985286 674256566 658341320 442830578 846153931 241762924 592849472 736542203 253464728 103453004 494606551 561485006 675886750 646244080 681506442 463832054 578190287 878146592 397689676 845980741 942133389 758503988 296855104 101023520 28772390 436585326 466930261 399281454 435823739 148728128 933906540 622330540 213521350 54034470 7901458 660785753 666997442 775960486 101988978 23536849 153191771 390119831 475045152 585990807 320700808 816900918 6463448 506528249 523840908 845257890 411310681 803806532 565408610 503584210 563444065 976502643 609521560 873002580 118086504 810394320 366178055 497339324 999353761 313353453 688712642 567150277 711176225 720161597 26855852 409132969 972387227 140399206 285234566 814494344 927083560 93536283 67080599 582715793 889344033 110385305 6627186 177350139 475976089 767314193 217516999 110601133 672951358 558623087 805982799 803421722 146001020 591414332 705761594 901765836 489664618 276119391 25748844 148542880 367361514 394721636 395080827 546182944 29680457 919383738 938103051 475187681 240198694 38028461 738801992 313019702 874688290 14902621 461201357 307483981 787302471 64910325 572189225 275563672 776109670 341961037 878412073 989918941 215849315 416607939 201223392 687484721 104899471 137273516 451791908 978610045 936777455 301353912 286949632 958401201 657724051 143270954 62345794 122512988 416168968 768695540 775440537 562490483 492238865 795418008 716694922 210669956 801830212 181040769 822816350 809131496 79824131 718662132 83464518 614970381 912998887 444773186 458833407 600011639 882657879 157304616 7937994 868792217 891046425 604611913 23191982 992062165 606188663 601677355 281895959 470498867 517969988 279574810 952473082 119577120 561144914 925908040 199633828 506215627 256198168 172673825 955206075 398481500 299268610 497928657 759094162 875806521 148936937 239195366 909637459 359241347 93406669 858524413 677929773 167287059 228519149 513121845 830354074 970521178 805767622 747402850 167782764 991792141 39057955 129504865 415906415 731708900 664111827 824050611 366345513 11869866 494740413 247078802 354087017 941970610 827257374 244351566 345942485 120917314 337001739 946062943 809197909 453405693 974738576 849488183 202108469 80783953 141572767 625005964 95114504 939699888 283066084 803599503 973643635 654654752 159721628 129298334 181598350 24993135 153063152 272665507 639636862 618812647 22733420 643374023 705138150 402870318 16543811 513257609 273603624 459714707 567041073 713619819 597017635 959941008 585233592 375041017 631144212 473953205 267114835 17524743 497875255 728715036 723556827 489270926 442932151 410343599 410500644 183277838 487912045 773023026 378936076 722665200 438317193 184144922 438102240 123664703 330541674 817661657 241976614 79925486 193269145 792893048 43960823 135424913 390612492 601646032 966178972 326807248 201613183 203448690 407071152 603961281 681877593 732987407 185357700 790963815 26071944 400528045 405052702 90446907 10807034 876121714 330624501 691521497 798772646 937777701 877861246 311490744 243200458 110912284 709025244 184396895 115380225 370455517 766257390 500184783 422321641 778306975 240124661 868013259 100971376 708601669 926963385 268852693 742369256 711939846 385531021 850440321 537769802 402181471 705979198 379823460 454615683 782606441 25201632 1997523 577077707 665689796 479653898 353578379 348665221 792053742 114161543 371113332 17275604 249706378 429280583 774487091 826082269 208145104 451233989 304230857 551714217 441027133 111229498 856101795 856164226 684863190 589586072 196027656 483080057 442883859 446715524 47031192 791075862 316752945 565851560 225841438 663062092 538649128 242133132 214126792 650884729 465237898 545919473 60908367 264673676 402560318 254113825 766057869 832068814 392298466 458906141 474964982 913221886 180641007 902211938 539414436 788502636 31712288 851812620 148059567 991630950 350801888 479483866 401439439 783069642 448483890 684453246 255377278 769826077 654797463 461039365 633822928 98589086 549292336 606799916 969995344 291989183 84718105 948558508 367619264 43317534 713637452 656171357 985016993 329361556 831736062 964425941 577967224 474049248 258956735 308122820 396073505 262280444 357381157 457536099 906792082 141835008 977109487 828407616 898303945 824812579 357656150 657142104 962045550 382880828 841912887 324664331 607270392 58873236 904744986 159267378 930348319 497476523 257252898 743978610 442434191 171135791 941848354 53371928 38697290 395524048 390209076 483830025 576649014 149206060 77378457 125217179 345401124 844489629 632265459 711212246 283477946 566540738 640464965 519955996 386029179 233119903 179521609 78577017 416558263 358492716 748943156 600372023 671518472 397084498 881001 760067227 113152443 793560064 151062102 320872416 245561006 625100917 928171324 917650640 71276811 972136137 196248641 826064452 994486183 218981390 403692852 671372865 876625830 893100527 909713247 191103275 901584166 939888656 159790494 505560234 737810880 701042052 21586648 21506730 227092156 964142304 226099268 659426531 576144775 95929376 542487235 331573917 245724922 423644985 699345087 729891555 582618161 85120100 511304875 175491266 665499823 401441578 834257577 634971541 259066800 94818498 805874538 782987019 825522040 888606610 254627061 785182409 982043412 996998699 663790992 553568623 98324315 317911998 411741298 310441894 307722258 921559856 450397694 538172998 587773031 420174158 236858583 25807800 32030597 327849979 49332603 541857100 807931254 468583896 432456435 747163714 227269740 793426133 13087684 481457130 154904664 377309390 103314790 405945708 256917712 87873540 118686374 743712341 162004537 443976913 12743217 154739181 597212537 764098 575279565 636011460 83490194 634168921 348220309 537087738 849292812 925150346 185818000 541221571 543990401 173703452 65544602 406953679 66027170 388634654 600073813 878372091 297807308 624857856 397659430 531804517 689806757 791895995 487894159 5131181 305243646 213740886 34534278 515447341 540117983 68138541 601947029 508949044 595095718 217770393 486657437 882560023 844392350 486868968 470425194 462881988 865812067 696536223 285969754 774016342 498827972 769590904 544254314 799719571 294936489 354500572 30683188 80218918 925685029 920808129 161982996 867372130 447168352 236166397 412107752 470098053 632585291 358224880 735076218 626182222 288794591 867744082 984166749 781379190 658220975 439495998 48991609 127249798 647743556 112840922 254495423 614434470 302078525 439067847 364053073 531351232 855792496 888422286 928594866 834670070 682086182 145005487 36106946 99341690 225547903 162032070 993608096 261192069 818767984 165550354 307939156 932345705 876966095 879527572 917731542 528044300 476993123 933262982 418102867 642462096 532337148 974344354 24188255 544321376 234615241 906080709 351381289 649114878 349794420 141653381 921407096 136579780 779247112 770511098 636349969 544269118 82186715 193153864 279075464 464951460 661410638 351054313 764340624 541737183 630652697 703500454 807295103 681960161 565154551 401765578 246263736 713787308 545055867 261171158 195153890 395281782 208160032 439311225 493342184 654281129 602472666 240044498 736343096 879077525 842228505 537763048 389497005 857022564 112796118 790525866 340244070 588201693 60033391 694936905 696112916 121815493 929121008 669104774 431692386 761301531 910020616 980677528 570086437 456891004 782000110 845864949 259291513 371036676 240508859 638737890 440518833 755920239 44155442 202372253 702643768 955128509 341173856 387291182 377709222 79168626 926686600 739610677 557210390 852928197 578447313 113308003 625691017 175823227 634830177 850592095 508740274 167867902 312133878 704372637 976938974 742767549 629316624 634902814 179992271 463628659 291201479 941373258 632366241 972087335 375561787 310871042 232289926 851035491 223448628 692745298 826150889 258052657 152655016 484037997 319567424 735066382 869254505 774813464 643383834 890566184 778633446 706788001 508580816 792443533 483464742 976419824 587750575 215330360 59150068 362986731 506890191 629528498 775687189 697657998 199053798 749058108 408189982 393048447 746341859 24658101 871552854 669209331 442178996 229462002 74160753 153066057 349130805 765896137 523707679 924221072 233721506 208739961 71156131 417077170 619228688 617737637 575470635 414984149 540539491 785782702 51998827 44774885 857366863 217466604 202947948 172809810 249805222 616486668 678119065 409858607 970542515 833050447 780979062 989166784 53505242 381120386 111964235 101615082 330295361 524045204 217511605 233774854 33374224 540956102 790056383 851600956 923908332 426000954 228793099 131412596 445336962 821703468 381629564 425529492 745474564 486455939 4805369 111603370 131480962 94612815 707307453 239921166 559032798 169407930 383519805 410939403 703577889 817376170 44265659 131490599 615743183 402247292 156148558 404454980 166858966 64985015 251567307 155828807 958883229 950989629 418315890 510956008 985968635 817376880 610590027 117676620 752776084 200503993 63343891 963073850 446222901 202968474 548025510 793884683 375431625 160622583 637552188 406849074 262347532 401668090 755460061 721413779 515020222 842888292 252926559 356617320 745957277 161233464 659212058 70910567 936894292 881328302 814792043 747021770 807388047 374029130 90694168 294654591 568489193 421022988 459553860 802901468 61232974 17791061 861647004 191889909 919339298 591125179 915325288 51737586 242089882 50372638 639204939 146861125 38043661 583340126 540147344 222711943 335150991 500907978 965671233 230884693 544389528 669843099 829452014 558559405 413591704 309454022 953118807 915791143 775027199 648004819 875733028 146232728 698534750 58455962 474256807 837344237 432160203 552297130 350460933 156919207 884731275 323064628 970618237 34878378 413427979 681614363 358648676 60667063 282789279 217566108 609828709 949906793 848081593 399499049 600393320 751127086 806277104 913468435 690120912 530059526 620042969 632308306 391118533 903998543 314674725 355277617 805785393 327424476 544521270 134669796 853065105 415068881 46443895 225565674 890454884 507714379 739039938 165196711 756818884 983302386 75390297 573547349 155363427 114933798 731819868 961637478 694026081 318769207 406036999 161460936 573155022 331441795 305598655 818436095 913551420 95339081 203817185 340033082 316602493 122941023 929786997 463060475 214355263 313708099 96629436 834907164 173665792 20537398 558849462 744778930 559603637 702809078 479951837 261451590 812335987 139351977 333867110 113873349 341789989 115063198 82236383 643061157 545709235 929256708 361489637 976847638 595961992 301480783 530242115 336398039 921918329 340205217 282596290 721620824 962866719 132615711 114328773 373278998 829273625 719941730 827459210 114752418 104455781 984935805 375352914 958514790 476853916 196312017 975556876 489644098 689820222 397265060 292137070 243494861 919155801 861210704 788234913 473907 562677992 201196233 691814635 942038532 595752394 693552779 618059485 967535935 590256577 433078305 175624479 896066859 348237852 291020939 814509202 575884502 221445232 94218132 156758865 37688039 906827701 643130101 560926651 261436892 502860677 851176012 217966238 223520872 942056536 981850880 872905002 829066326 157782017 555252363 895135060 601351631 61460275 263130030 362255548 292874089 354276365 45455528 770564382 902485340 240671861 145294684 686728905 417412689 657633117 622656838 854276917 987033377 801072953 326980869 828507678 19546701 85517972 170253940 692662122 143405571 281646592 248423826 157066810 953393724 657406708 730357346 132722506 757914206 180304018 848013506 327509861 766604648 603232516 431322346 632433115 109861948 965683281 320148983 258092461 231329310 109566888 322609798 690564169 253983084 413092969 387297984 598715374 458390104 517703402 124500408 405940017 662550377 946773572 267755576 923466723 574262060 835085649 290390024 328831744 130144671 615941264 319903262 512672257 377756031 553830094 75562147 160497153 144443519 540144805 887296363 146188739 518934377 315554832 918580553 342926928 937694993 482921477 990117740 671431912 208503212 840472268 906377515 858487540 500484814 674261893 904836857 878103819 445115321 495757616 143776893 636144317 814963341 537514473 691709961 209421016 360287020 585958047 460351673 494235829 910290391 937423902 437964496 547537010 55112841 127696653 970068753 284598487 400511574 203246817 805716658 584835085 81144173 497092408 119363855 610156537 978609341 635030233 474592180 589271960 175689643 539089280 228007761 229139040 460378301 880824171 591484143 745853489 705980152 476439458 6430086 471791479 107518134 424166745 592482871 92178434 88345346 800167663 836061388 394136247 828058968 456055739 965133143 211125614 682588354 692281033 573822578 566283701 127126062 767903129 929329103 662521779 543640840 775841721 70517438 231548221 93389702 394426622 630426379 416248223 676183220 675485299 450313673 175235995 896856226 239916202 282859237 463923731 781622005 836525050 211259623 474697782 405102653 20027789 651045189 591131151 986562671 888022729 138871727 732854601 566777735 136839099 515351163 148761621 365212656 774466521 312474786 716593317 362343908 592553336 419179362 367891514 333307937 227684044 382305926 900679767 755484794 68698580 383488372 490595971 354563083 667893025 22323548 481624059 521712771 335365494 42072981 177312477 754455881 505625058 430661483 547806440 919352620 726210078 493512017 138333916 732179660 429117409 808409966 552644925 158523820 392326252 179714871 392942917 309155330 525564983 683369880 161118131 246117811 341186490 482945366 876566511 838063440 258015817 862488434 373858900 422981935 733625698 629264175 526662191 518588483 478477826 197008824 532741887 435637663 143984128 654072863 64043708 654863425 561023917 59219016 937022997 570383180 739309400 765522687 59277805 371294197 655051318 200519774 18418463 484461177 341638108 144779811 216110160 549192978 687036505 736094414 584902845 207119547 614000528 993892094 93641428 5514475 846255713 875990917 555042093 95003729 15602809 530255960 131656769 509540117 644753964 297544664 263346312 130837598 210377880 274666880 14834248 8242849 717372685 442644639 813258505 959917264 133781105 361094760 560490977 917669492 197873276 395408322 253308110 45190494 954126590 987552906 691771666 830792582 604114444 761930703 791326358 615587001 990079982 547112102 344978377 42696105 724804582 331951437 899788306 238006111 323800563 273767739 757268202 131505016 263652713 51030353 521969829 264270420 164552260 695169444 949234873 688847289 970087854 510783324 25752285 850446513 199013533 627785801 922912142 140646900 162870734 787028142 498985111 742303949 312898951 959566440 595760536 413360318 206943876 905956158 747362461 232109101 418411113 525339286 163464802 267695739 40816463 578529532 440397097 532033913 791306722 534708002 904509001 508464299 916836905 835046056 952948286 171467320 197525795 381424812 802065579 999718201 501950321 245789029 637549807 351116874 442512782 784269509 183970081 118155795 83221788 524419821 862797301 118245007 62246780 666684145 311595799 571058591 409758786 146921146 684350064 608117128 833926457 481719775 375559762 963906011 317017568 708568903 709002507 593812486 246467875 183296105 761461970 203682029 779052360 540523430 868243786 783665847 600852114 903976743 849267709 594387010 199385230 617462970 3476752 891085755 917760570 20393828 378331564 766587664 889460524 709070348 501258805 473877059 703862944 69830288 32829243 117310869 654916183 317221570 514640416 604052919 234608970 647654189 511099532 3055404 504720515 223892719 169116268 694410098 139741876 579873821 721234609 951581388 818596750 752863833 74602740 116658026 513653237 37853478 256270731 667569142 920873526 202431387 937408100 894378973 89436043 141007803 784049326 935214615 327525167 713966929 482123870 960723685 647096848 474001071 186883503 727882805 71486596 369338388 490950574 772660453 9346419 955750773 51758487 796702480 96727184 176760131 157523140 128264734 598982007 419810886 641413790 660315454 297203150 780355518 115680559 839466347 202270760 467349638 387205070 777246436 930484138 816917465 407679078 965441412 712686876 83338598 138259654 608710042 804136027 422215974 928823656 698882985 916180296 737121419 63512639 198780286 418783481 896097606 561072212 450302676 19412435 441302501 498627589 773154999 940221477 994401688 562530692 58309590 144124173 449639291 556262961 191471814 900906241 415913151 487047233 931500862 695026323 358236747 992034113 660976308 885361257 429425600 674475673 384032234 623966059 560442907 663916939 381817048 423377423 247407014 582943206 846697929 631059237 945870744 551111343 673772331 438009684 480407276 394586197 591024348 646075936 899622437 755986412 920828587 82379826 753917539 710654166 914583513 916347249 885573361 721676725 357952675 559147684 425154192 743525271 926123042 994413118 112832055 698610815 103211254 539287422 284608983 774949503 945327257 820201352 303754743 582421226 504372724 723174092 50142949 405064649 260394328 528618338 29473590 183616023 664972742 323728656 216910180 99816558 441897005 187815927 977298494 391846499 902805541 651971411 219119203 889780874 546125509 974558267 876938090 551056070 159448302 826656601 683409672 920632753 586997370 22946569 955543401 496817651 120284800 590177737 431566034 17908165 90886544 368611406 744214039 763744359 929112247 414679652 994319403 200984125 891240248 570453385 967716402 472407496 821788702 8908558 462723756 57267988 514644348 340295417 775681129 957198144 709623367 416550206 150598678 107461223 874008629 547253767 842594426 20193916 244984091 279096316 688778407 193303766 580364846 166774844 539025523 726507229 943293337 427921610 638041250 810317300 639045867 247113750 364330472 173060721 617472642 540748336 19295108 224982416 800615775 439727046 822293817 495743894 161182570 473296705 282495227 820709097 756234749 707210029 834584161 430321991 625459948 745828108 213656171 747063177 862538964 979772518 954696780 646263658 606391039 688126814 875837250 75795581 520550883 428825800 210705993 258472369 542259773 22713424 996908667 407525059 564724034 849792453 574468693 571261261 52059336 543108995 179131453 268623467 341282379 57105781 865026512 658516788 955096337 565372657 12365682 851612354 555572181 930797201 675070089 892870219 680597290 933385950 225928721 360267836 803885879 843172512 918087236 671063730 979075756 746624751 563537015 322091043 945804575 207868580 565050826 126102030 67079796 971413191 677655148 611835252 434333913 305886170 679575777 394012977 461572514 351188156 715979952 702353331 998739949 273160772 714114600 41978240 549825302 10208273 813872500 297705744 968986931 575388405 906741015 491954855 213303697 694960752 2964507 152424671 890580328 67158595 954255584 313046902 6869812 274778516 904697421 876501765 461836342 311536945 364792086 658975796 731615714 811303989 493430187 138195136 916148126 244821455 84949997 370249029 967630005 661826744 388132586 366604350 654892632 384787621 860485939 137770159 525772469 645839374 254669347 535016859 906052147 691863197 621250453 145106366 348986013 685976070 655400453 445889593 573099377 67005028 261837668 548138694 956934144 558600026 143202944 542253053 36891179 130502441 640530166 952470550 97769968 304922117 73225868 124882811 427488319 189024666 402678136 793707297 883043669 276254076 252021580 512881174 622852845 969802580 971507558 386153580 546289067 914706337 728495015 763898589 646915911 769969119 778213470 571067577 498978562 432194845 64548305 891629875 11185881 206956926 283780443 711633839 727977284 486616152 750900448 803786701 397220962 585764199 314899178 62581157 568244490 323643376 69501674 586325176 163732743 302095087 469490665 808240449 208751781 835126265 398667977 84617866 647950193 351546218 376849421 496877347 992676072 126004616 347258549 449406762 324415654 638574900 217251590 306037060 384440659 852995210 332822197 969354615 581159774 215463663 298895747 482974805 819612140 392223674 745229923 760552427 424554508 836324750 615335740 499977927 711257172 670492096 469147054 800105660 255143247 478192575 562821605 711136380 368950110 963165619 608871249 393877087 717574141 566523955 23638756 178926725 933387828 330057086 94543346 552592192 165102498 528253036 642990433 250436801 76436246 945786628 960193646 307248902 416605123 720165932 655311684 821022834 20569395 113965102 57655520 194327809 74713758 835248844 916842287 806700250 663876178 719035007 812387589 62275721 971659206 458398075 796805045 99835898 110464140 522435279 996080053 311189486 297871932 217158128 934219412 17999271 501374103 895327471 835899486 501212605 968885726 736721496 396698661 554629738 839983723 47315858 477348032 513651807 797571841 474714530 237816966 428713691 987246520 840301675 437344158 17968188 327996433 906562042 129590496 23935425 469871385 511333308 447421950 682311593 268804451 256851814 738263388 539300288 865183313 688687573 254703788 241957399 564238044 934165775 607296639 893519039 646500187 924043910 40968172 978353171 681796244 374047750 719154067 279565906 441020752 395928107 306416518 922150711 761433963 502100087 63431064 415289899 605640820 154713196 986409592 103304486 348267226 918954834 378253101 934146610 291443692 934497295 629769355 184168826 940661377 958498159 691969621 13251972 702147480 961709593 820998651 985604586 495979527 677699445 273007787 457462213 205369812 529265719 221998705 28398442 359809315 791338833 110863841 637008556 394809507 472714830 924007527 544290043 164861538 594226804 417345696 940803204 233844243 192077376 41426897 37482934 64016818 796277874 749739525 1776469 386767678 641849784 822387774 986538620 55819006 257677045 80623662 207485638 689631806 25030502 78607862 175923558 223913774 542892149 557063095 424918502 41880868 129115447 539941710 164022171 304658372 391079045 283960300 375221752 737846404 13971307 656692828 54782637 327897336 321935034 185069561 549060956 526329358 72573004 852489186 12783622 380394021 971450950 406505114 96357718 532113207 87818126 242728472 753884182 119202429 989117633 973206804 476988698 489525603 60270877 15516 894814236 969771982 757923087 667193594 923298954 479586983 824017231 692315966 196446882 808018904 394612773 26219674 206777983 914102447 444058608 650591829 523711892 808789244 303988611 712876954 472535024 828397329 948021685 662587010 138155534 822895537 254328073 496450150 586535888 149738138 114414787 374579268 488350879 189753212 997105688 324568667 943790794 711312241 446084657 516387503 785690860 440676936 925981807 156225632 280881743 900326871 497215820 393376839 324701620 138634256 345854024 986059017 584164287 825703767 727496322 448382739 90724342 949499341 917366972 167364644 74207543 383739384 528933261 67080474 805790749 369086898 312353957 24406091 211349075 219274119 106753253 382900565 354314317 199023471 402526856 957589204 586500935 904226718 713549827 527494152 768888918 680310367 894157810 898509116 577488124 717301163 980006389 332159692 238697551 279860396 877010315 201333615 537915219 19448597 144926416 947423681 72261966 534776972 675697300 493281598 270515073 353466810 465242564 848951281 722432316 962514807 236104058 444169106 491535601 504170720 298202735 353750926 487433651 59201046 354971603 517232198 48955983 32220083 886507297 580352628 151103156 47614295 653895771 147303202 7491376 104806533 829987867 805834443 215624127 486538269 84452862 380029144 353280471 912807414 422588426 838694656 4563524 810682394 764739951 333511689 263984028 839977472 567725942 506931547 137325095 813559726 234029061 84357629 699234294 488924502 513493368 981814855 42069264 20824938 528266362 471487143 948262037 875500299 231332756 803960422 323873390 232109413 179335961 523412621 430950058 850651717 564707726 92620253 285544639 895265434 210862401 841730682 169380338 725578018 243158082 951921845 267757896 932434118 950246597 49918925 426454148 188726856 261597667 240325643 723281573 753962439 427297856 1380259 665384220 18929194 670781320 915081301 723990136 761042696 894091084 828272194 53040702 803927369 806122112 283400413 890626715 31618191 505837267 635521207 317169462 186341376 808886352 900880727 666901632 583744169 962414855 168553567 249891171 245525574 345523377 27683003 852177534 848636643 405609470 288151473 849471549 957898929 875724065 351381260 745589917 969379774 720310534 227519076 762305293 590867676 757944582 603239705 100753351 560182104 703246230 746000610 381052377 690876615 380579409 242825461 480409261 442000930 749752962 359409745 713017010 636528059 158276437 878184421 117153994 575063383 470828541 909110721 192917670 510291580 445793336 843514406 632873070 198397461 756083902 516256382 659940863 236887607 746967824 771766585 820795699 395111064 192545997 558391852 412047637 260478480 54163799 104395081 29784534 200073967 259464665 996204717 664749650 423479693 668055620 479175520 320744784 724728444 471018056 215567459 530998300 359422490 912266475 996494520 722408309 9819746 411709494 107987046 123580767 57140815 769721998 146719479 396773155 406417668 40042617 723839173 464837325 328112503 811881156 107059108 932588436 965494778 321302016 138965720 76859741 770763383 776175890 940518025 909137547 115638757 701926524 477319537 404061731 371858769 589599685 8328115 447312869 40204518 325311890 571390939 244194186 159154423 663545616 6224635 721568140 989306214 188556070 325100446 574527819 794016849 160191441 555819683 474207340 247039736 124491207 264758097 313519513 527508791 851702261 111349158 606446451 287785058 175962292 927340199 95417628 220887605 624502954 713945026 716385996 735203351 651715532 832338422 290681541 673522434 585585702 370268496 833183788 626398945 121756664 766187029 54481875 110137695 629911500 407844739 145913890 214212232 358836637 282582594 27089915 82183237 102942912 586348178 592236307 179488674 397043250 267819555 781196529 936848392 936732109 219036684 255212800 259727162 33425429 705689454 633810378 240959522 765309599 84458509 211117072 196255144 218950914 674798894 722277374 924789868 649720207 474005149 50457681 818387967 656158774 137696186 126353707 338156420 339149981 298630429 268270000 91333168 111982400 252576865 502594684 291873511 851939563 253899815 446500160 299556994 142036561 128675803 228165548 813207878 57910078 348237621 395261785 91525588 928835366 3490213 128918618 145420196 625933306 327822470 210252447 147444330 167877170 851279180 701114864 358446894 512873644 234943004 55455200 525182992 788601998 324914742 466806648 67293292 902088497 180389806 106755462 179792104 108552439 103957154 749194885 282403335 728634358 715733358 690030003 848450484 949118881 364487063 290422349 669734281 649887307 769502770 635050452 803435787 377028134 21248747 211368185 635775755 204435591 446081757 863214786 931015732 928856916 946750380 443895985 963827582 55134418 32844008 323217107 81562129 511592068 57208052 660878661 757551557 81488337 690769626 79605406 769235906 677227443 197744182 207634387 447542443 716010543 921139693 928568169 101876502 663343335 458318427 463507370 910562649 151404690 792459826 752326913 189632607 909765434 921407323 812070268 231731156 911795078 406391077 691401410 326271709 681168925 794162909 272171985 584178180 695097911 573737272 601931221 465275522 294834240 699581044 282221766 628210831 705874381 332946383 215278708 451635348 123224291 978047539 461166570 152757909 552656232 831568817 591255785 187745104 877017698 808341716 996276254 103346325 672093163 250559785 212019611 544421517 51413554 679530844 857357480 896211985 805390317 366096866 888631017 222841783 764182333 398390289 463779019 530679105 582293185 400147192 156689949 8160801 3252710 418975200 960759646 203516839 729881708 603240872 72969243 141086273 760702568 318716760 666628036 891698566 117741965 651728931 196130738 683950933 800666873 286050620 355515212 663925241 857065478 515578828 592305617 194266984 169958516 428085032 476305841 642998668 961538030 852017696 899254691 583682757 246885572 937903889 3778670 7076431 702435697 696096389 328718582 415676127 595653363 147303858 401277439 210889909 326713134 239696720 311374269 988336697 410337356 569653937 979387156 347155268 288987674 124381855 258445671 385298642 620571008 91191837 457428917 143504824 535652125 233406156 462082963 303987974 593300421 882839627 70855465 710824066 53252338 161729711 651076180 52901682 390482441 477964350 474485853 79963191 710357366 142209871 346997328 567561555 262058866 905447128 328767997 234745045 226722755 651363438 921732836 625433274 456128728 812613996 595018408 258445226 933572443 559025816 648877751 766471593 295705239 28070678 201192821 688729969 492861010 708990420 406544594 773348024 872901500 405570580 297734761 506615453 391868210 910949780 570632855 375746850 596719776 682209368 928320078 48809210 688084122 852115234 418313858 584445037 669990683 785035561 626357761 269879359 744177309 378992201 537014660 742535443 828907788 336051256 216073018 897566531 874787964 871054224 131554182 65974376 860811785 431689961 661413497 667676605 411118425 454506724 74684067 613843891 129490630 600884627 640026149 888129467 599586412 38886729 565714361 977332836 868796403 150811016 232452056 562568910 83414765 622139633 603288578 642995830 185566708 307108652 267354364 35733828 454905271 269799520 66139384 811279788 375173555 794302826 294036290 134092294 23420804 372080491 421950040 625063150 183051268 585045828 465007224 451746393 151055673 675288296 914604511 327953516 59328461 311661014 252102375 218700408 536057620 918484976 390056262 63271667 632727811 809664200 633088602 79092 944093684 16316038 174084379 480286397 295337053 302755085 440124133 64430698 212920764 201786397 167943790 976302413 572209120 109563344 292249080 788481065 268427494 845344124 314165780 501448121 417589136 650787031 508115294 6439254 974614360 456798613 631932802 590312274 116695555 328125732 152412022 241039881 472942610 307844546 382236752 392778084 151462381 124335716 468667530 864279455 961659555 193483863 316523151 191496113 127970617 323932055 593657669 551004944 418975944 231720637 230395922 362220324 250554144 684063401 982579220 205665660 327599231 129285274 166288084 30003783 284853323 374652195 437179122 33451250 759237267 248179558 488502764 197861460 204559450 626227822 414885578 578836102 954901843 554942967 187351252 670942476 98379038 19918481 153070966 180719196 135456618 822417033 806473459 652934063 374950140 480533286 567876215 848827018 35928477 101139669 54976387 169484101 635174724 358399742 518903599 913423777 355001540 981702304 40436580 347201258 285223791 361231611 576348578 481247542 431551836 86703473 341590104 458187054 418524373 5601001 724117714 233646971 97647494 146279365 189363682 917077150 492107466 838995406 569977829 764923816 544709119 395589037 592996194 590845391 528420148 317839842 327758921 335480307 394040650 468874915 760873410 52077798 306427241 155404332 77930132 495216761 404558839 380759013 99217474 196261658 727778154 675397798 213806922 643895544 173261859 413576708 321314066 670594188 827454851 129541926 650841031 209333242 680979403 953253880 747371044 927329832 701538554 43554831 188284067 206612050 341647687 533081917 435677687 934940890 221712948 78543512 363887167 295879381 668049550 768249007 233626595 420079774 341540873 332897786 912853492 732914965 761344634 597736878 968781741 612516817 587395219 533305343 148189153 281397149 856554193 276286450 704244812 802807884 742745995 256218790 974179341 820202372 188995550 945282859 325939308 695952341 66042978 225577697 272847878 913766733 832198207 920099237 544013564 654422372 43792390 973757773 863307002 74905781 6322438 713388869 688816074 853510565 895898655 712225780 325146468 244549852 763302052 439509267 71212157 401360894 158301668 885977750 14694596 703795868 36871140 130418712 61123566 363625760 668764295 700446842 843560611 388229967 689348446 842772058 993718640 224273387 393578868 153514891 189463165 207372815 525498433 854116181 334087423 187064979 439681224 372492342 216852769 2532860 408199373 318460976 234949094 47756932 643004690 786365328 787522823 534991732 209277214 453330414 615727903 226150007 687536350 910936469 824283473 524680332 783819769 163257051 963102407 388330993 767633383 214924629 419452920 836397111 860594677 562871823 40661805 738724078 442217550 327977400 411894269 528048265 819925884 780061151 611004566 784750553 116018266 933368204 615786892 626413281 413311183 262003323 881722077 674564768 653736367 154314515 28083192 312351898 746554934 289865304 75194495 710617754 901411386 856196701 302350000 783055913 146850747 540334868 919803784 406194271 709962639 870690577 427610418 390434379 336798965 139216094 67008859 942034655 868729079 662509631 667073174 136947310 678986443 602110848 366038323 884376025 710282618 957734121 905186515 789672506 791410749 232648555 794817575 46084984 127863990 485908379 849818400 432486113 660300355 226870895 473259848 175693843 661283840 37552765 744077519 981984745 865712059 59074170 964807909 133583611 915551695 987734565 959746992 214104283 526373399 210445804 223451768 496197614 911274474 380948604 793530052 326744124 144077105 528160578 606319018 629078206 908325795 69773638 351185602 985368693 344659331 514616628 682262229 716850294 878075538 724489254 763396049 94934362 162815499 871371992 430492135 619430339 419715492 911857455 675768520 298820749 137889991 861247875 734530939 490968970 281688601 44138695 737227699 336351071 354578085 49983496 556638616 95484917 214730155 433494354 624974478 184103089 156798028 98724349 555640382 550854243 193876898 836404656 913789408 715318696 332054024 316086951 239415777 242930838 982400275 473439357 304793001 892477495 992607704 260477794 870901702 756122518 401828860 602262094 614918600 567646019 22058342 418268667 110418754 468078156 161241624 110680370 558808959 78127128 996102330 205114340 354710864 261921112 594678435 820002139 417250458 442372035 981604513 520922441 361717801 742846026 896581163 301933568 962798828 674772822 291431799 299307238 984839544 552978090 783045798 519377301 825005093 272689088 950255719 537925446 309789475 595922705 784967129 438994913 653055043 293205394 699113755 836838392 339287282 819838130 974147875 584587426 955942835 849578936 643377363 369446391 123470124 259370893 8485920 609530240 647671888 14717171 348922389 740935617 132565268 67679250 757586397 807765768 517899757 744913037 377308278 16222323 2367804 115367361 848457859 785690187 478594823 713175152 584540298 614025903 206309850 158308376 921238216 311970111 350980142 386104080 164871661 31228449 721741966 136072447 438783099 936474045 198236395 613644099 126121404 74011592 930542988 493375603 241698355 22164782 669035520 17754685 817191782 947225989 113106237 599703826 717918079 430205606 69974351 601744772 253018392 744737306 579941498 937813410 138764454 221504811 789207338 806295795 304662677 116630737 72649819 686026642 213548978 886772942 981473675 394697795 405262584 208348251 982701708 656174440 521442090 903948577 929557567 651975232 501702285 101571938 300982698 491246715 177662140 769372715 657446905 980005614 850822010 446658688 33757880 145779709 82267171 700984812 449627771 878831274 658080019 58042902 79466078 665252327 83769451 57142247 597993304 654864839 231272642 299009523 5005693 810248647 412126469 334009913 829707204 174204188 767308223 145255404 353049973 584228574 240397778 415230026 198785192 906843539 265519875 481006914 273587961 172436041 985527810 146658944 341048211 391660810 91274332 973193917 85648109 328337697 930416066 542793307 39914383 75458897 906070291 394585423 162518276 87479704 284718091 956367097 876582802 296754048 250970224 719820356 916601847 857876440 716403297 616974850 974922742 45453751 869997944 135516758 673240085 129257934 65676918 951150526 477515644 189721846 173985373 72080022 354113864 954828108 409619745 386520959 626598593 680085523 521524203 111587157 115745393 974749577 879254842 688730887 444273666 154020935 298880754 976528928 542485380 583864204 263612343 64073746 897679032 933848471 954419152 724466124 970477884 534157133 538425519 413724559 447659318 142951820 630930585 992951805 988032564 271166474 421290578 309233099 583589754 167109379 669540056 328359792 849797450 468617377 561127531 738532965 376267138 602638514 845498744 286731990 432629980 453740431 201735476 368564658 651081545 15212157 478622142 484131872 888875320 700193235 234202179 463532091 432132070 531555091 198627273 54575898 286617262 357416632 703539251 107780387 361097328 792889697 439187437 183366148 998947109 485910509 163574729 565953321 450719171 758238412 561375107 771580926 375203327 903407287 168078360 383562910 182169486 723439857 345209587 186006340 246601967 207028406 287472807 215176476 219285929 686195245 889851318 765388709 342840819 227636865 497317031 784058370 68966826 544625774 263233618 291096555 258491693 116638177 188749334 196893433 171858932 888674359 366539297 359879471 128272302 606045788 282986746 49017063 545840972 984469397 591329209 743757055 988898539 634301886 687915041 759413755 156459733 315065235 435849499 636535037 531691031 466126507 714929271 436197127 47686358 876284168 124759091 888977174 720377000 735554674 467876171 37609477 379923175 729943830 165197940 751432509 853421629 185730599 318119668 584439676 481712169 301599658 481806302 848547188 732017298 210429150 183903534 562062563 150852442 621914430 787303930 848280512 723918962 566852766 704295909 978619572 559259801 838164994 923825445 896511880 329623698 639886138 77205837 197656164 131448412 359584032 197982647 480095256 573359929 760392317 507200735 282162668 503475015 656866329 554517220 262204411 18554826 326383184 444463670 835468031 377469708 547687444 122966177 992774092 981128107 698413706 92626093 660235520 848295769 717158687 883813706 41872925 904099202 480549051 217888427 879633516 835523375 814156394 238218608 445100567 885495664 955894752 800213573 489571858 674235114 426241273 891982235 957949525 587454208 376092349 379592786 404408104 116346503 598296097 992697492 355055645 509273226 703297650 184313168 913932046 903635069 62616927 905546956 22918540 384420936 625544180 592063700 268346864 543288837 651772119 803060223 100613788 313527134 424851246 634684581 655203913 933040910 114397433 983362765 33154269 737780395 964242026 458908616 684309630 790066852 7790515 822224816 121893103 148619581 357108074 921810657 535779810 518386056 399329163 2260936 968636515 685034428 565126636 177002384 245169050 89460690 662544562 636714291 519223966 999888778 465714503 420205744 362252024 927594866 243949454 419884829 607461677 692067053 763493455 768119970 275785217 338819479 901374348 670603081 718190042 521740798 220803153 913670424 753085933 345513326 377564690 545207756 750101316 258186953 378713933 706856574 951334355 171156023 763589095 156850582 589508419 216709590 46762026 694431321 833223387 82483666 164874798 909463655 905677398 360536568 564706118 8583751 887629798 163108537 908735941 992243511 209089554 544597121 661925879 226254974 522221691 932026535 604018439 202614685 671834319 546202181 700860452 827771274 830532055 446239436 50650858 190642338 35580894 350995009 697069556 883809433 312114865 989694596 323811246 269350058 258531379 769601298 850112144 914679754 688418578 969394928 850620783 464124565 25583796 982341125 886413538 501383084 900989233 938078264 985841017 552415838 305323817 269846874 587682322 949860135 449061360 267582137 671105800 418944179 895838821 599042467 934011036 24801114 148520130 688649031 517138066 295429490 182995174 597065133 4272281 685321350 923311165 479209258 502829988 490704114 695463722 563009658 90413811 889535784 786711239 444069184 794504190 684773773 461333933 654045535 980939586 188116832 753425406 108441446 360685288 497623147 128506269 288384386 272117982 342797069 419231743 248374050 42497362 158874172 544063449 855867558 327782540 616734096 523594366 562751518 50101505 543021164 747528512 453488525 961400813 46062188 52627516 38684195 767567856 900667272 21844654 512278718 643904459 397262880 902073697 188518666 307551495 594585037 391843753 843158737 815065644 554125141 727071825 142899735 182270304 199376940 97026817 540373314 691339806 982218077 338731079 749536252 24574560 850976866 9394433 69818129 464518128 119678018 921675463 667915 436663393 715724036 250513218 781247931 779290593 134677820 335173085 748197921 403516935 982469359 903576359 69636191 798858799 159618380 672057779 733012483 900032230 237737429 623322794 874507129 836399448 380238696 412453632 265220970 463174977 184289312 773528998 756990064 919267477 661252774 586824963 554368279 164646880 194288891 164000215 106640639 962229529 317117260 106628680 933917935 105199740 273606104 808654681 417716494 214314244 409490062 479232343 15321192 368093338 531848084 744547771 27119151 495798171 630509952 985240584 334960256 207863118 655324444 592782859 49867736 609471016 705507439 318292547 499042390 981584216 112173171 412472664 321158884 442217510 270258057 602269317 352133251 13282127 767019420 854147289 209515692 860859163 568936313 816399364 266385569 974790315 92277872 969452365 291282148 566579061 437893747 579088465 140362737 911058996 945125878 59939174 112385453 82165055 717498846 876286156 281945858 611510027 438124627 56628731 844573276 485632659 288180191 927826921 957546977 828638857 67842531 375845530 324816658 790161674 852188093 802433053 106676746 729675698 247097860 385116619 653675250 948005600 510111022 187327458 243492425 306281065 914623204 661933627 767763698 803365181 788478430 601684100 11114604 369147208 511673379 96417581 545436644 380802476 496307274 5974225 359955706 1864840 804590519 941376439 533376370 721172995 399238809 85834475 298336360 929719325 779820113 96894914 751486180 775322303 748777674 50931438 391022152 880642393 451497113 760372544 319316212 121360463 457178575 613737276 149941538 420604216 925881040 620843029 557180221 166457576 175748387 163982417 869672059 773331785 105392020 585210953 242971999 558948607 190687223 531884482 148294167 683888674 128388576 653598838 737401997 44666590 882369384 254185165 451097090 384630861 738198946 588929535 773255748 817184177 689035099 616202530 485726832 798304565 419721236 338520800 490482450 662569898 821850924 328095593 660954789 624876040 9295799 667585546 437948676 65858209 688541566 573256682 563925322 911001591 741259851 422219806 907880743 781899902 397070399 321425954 245033807 409670497 720666973 34349978 131356647 896740597 313943704 619542176 694759274 658017525 899353164 687339742 826288048 257926164 392896097 966671499 133644422 836479920 897592279 535530612 181572458 735606387 66685561 242508236 806741549 151760476 675335052 977724417 521652893 893061115 728090263 389488979 74915213 35793512 774555677 479526299 478021298 343908853 125448478 874340249 350737501 577926832 198735788 515112218 807191485 774852038 138333281 656331838 794704619 118137894 491303794 614409649 484597757 20526966 503460967 127312863 848580998 105665083 750247164 809818731 407698266 483500291 334440840 11889658 110759885 52847680 336679572 601144214 764236108 888979263 45825402 696312904 497935907 636628348 674943072 18473873 404537281 934873053 3633424 988525081 562282160 560800940 197051867 179684683 755847750 761100151 9555052 391833302 266014009 377268025 352783486 700439649 807685833 417325935 611048010 518489361 156570506 618533256 313910937 9017993 681847863 774899543 364751598 916274861 657741134 316997860 360622453 200163004 236887704 521983750 122305849 325329326 970561629 166743089 90935629 206603717 300805119 879198876 20752283 902898887 186807802 10085138 522850568 617676009 232108571 388486131 631327323 74658209 776839384 951380043 782649616 912922088 816565785 888593794 874692193 429723878 104585010 939421820 73266154 549635396 949811702 407358700 290643708 443802781 548321222 422047148 390684911 868324583 517756670 142715173 15129706 215041734 255914878 237926711 216911183 578081006 872460159 357383195 242323692 272091336 840312474 873179572 547520895 52154868 784839694 453229979 719614790 176217274 923985047 378601970 222930393 243299358 599661319 384505291 218544711 38589103 492827937 80161715 160535908 44809201 111149811 660902282 695831939 139016558 373722751 321394898 469093397 657736046 29467905 574522822 911824708 667898037 41215383 973590293 886410581 88736288 76837720 336260320 890209176 389802109 202247229 992083268 57321678 60342736 442472563 646163135 760096744 717282677 209705478 484325076 211838819 153830321 178217825 234034798 391731136 102427117 820687903 788275277 190820902 596003134 950308705 286729432 445690822 659142959 58739113 24506673 577238226 872719919 590649906 92964969 369735457 976992731 44239584 751649046 352551873 17461077 281302054 346200738 635617595 442911979 865702358 243178139 767650793 140306 780254087 154446747 700780253 543330630 248183753 206732800 182252224 886402495 772263999 706158446 839364661 208238337 911979187 831579080 569613318 214534306 905069240 49556770 907940924 968403282 30371615 872258276 921383387 99956529 308786791 641862132 261044098 2797617 146257141 28312425 997817225 381523957 650165831 973108681 383518465 832488907 200831504 817497897 149656322 204243722 504234520 229844825 782215506 686784471 386439535 762336185 464655034 534058756 500932649 156798218 793828023 811370746 812278726 586029548 615626211 557716010 919809469 632097082 882207605 592396026 17602464 934026698 171186650 835248799 835611491 268961885 828745012 799016905 873230604 451294107 708904366 484137405 994390671 161264544 500732590 459973722 830210291 726517907 757035350 625004579 39142925 966097665 468722446 523086158 878656405 788697973 845211693 708383318 251469024 600047899 538993348 157601618 550217340 696217750 546314896 74840521 890318855 280454864 664202862 577537899 1491679 72151074 848179207 972281156 633606823 125291154 708282772 215431661 338857927 825089736 958985549 188679813 363359 551376138 236202370 938834208 952442668 451310976 208586740 433662388 677737651 266818088 169015579 484324985 652372190 359288497 739230687 377532724 978399661 356756936 472355688 218245056 945858083 701269946 24084640 224264411 501247186 780014461 833993733 544472069 751598905 51257398 99627010 810345048 169456996 207655829 331386901 249850070 160078186 472070091 432321318 993183359 179584214 160168084 855813122 425109555 392719269 671545081 830030271 866713279 920543390 959341377 808597826 903489598 693452749 130624436 852258002 201477299 734231370 102052635 918136934 628580725 988213105 705737083 238076864 759287851 681677932 262898067 638418392 519031117 450649557 477367169 479317494 643899917 811485569 605662122 603863203 909679844 90154560 214395653 153746906 988433808 242086099 612663508 403138833 297220738 740800215 95966629 818825305 304729236 755130736 827990072 48966369 876153606 802209357 597194578 982500398 234129784 35696428 575452929 821950884 711933942 890409113 77145548 778650805 349077278 702549874 882065838 674238719 973620129 326484586 324127654 385118525 483436546 557017384 167676924 840810118 335595911 774680635 257301908 954974136 213263619 188513357 613947647 748480430 474660944 30975576 430702344 939534789 672157896 667477970 460176344 117774907 319827698 617717273 350448764 190353355 395387939 402262966 456719150 291820046 579609434 294757006 873365038 850656659 550986862 927947536 107560116 781412926 508562674 702668807 228801608 424767563 19159749 60062364 321067973 710866507 277476121 115687698 684914254 874623651 786954350 579361003 772791902 592758137 847192982 895859315 516471082 607390667 361712132 550633993 203366323 931409003 328608571 328830173 895334181 545946973 751392072 994505187 81158245 619876219 259203301 917186512 929588489 274988866 260806442 656330608 938359343 843551928 591814846 62168872 148147813 856012572 786506764 374969117 477831042 212461948 838376128 317787725 767233599 751001720 482059175 687404454 116874343 492989263 656069876 956777560 550216800 4274660 81177617 172143675 571339659 71949893 896992095 960838304 308050714 30024516 233345873 364207111 727526571 180502088 549692752 208542991 588579929 537913204 930681526 652683625 933696156 41951447 251823487 94161752 989709791 160761240 251384385 414237815 960672152 126804641 543783173 548153093 256521778 33221513 332710880 711055648 857152366 625536909 690839464 729076095 142647673 114993674 862838851 312936424 738608797 102177267 789557786 191410750 978994367 544682511 747039175 551785223 194019815 112003017 228299772 899938916 890502767 192705351 810877592 289636958 836657687 392268495 428426948 333790809 183838369 132859168 817038119 88873125 3294106 151009113 828054488 22657918 672004040 588487835 882168664 261336959 153051135 194704105 173675972 526671306 804415785 352963301 350162437 670590785 45033055 684457775 467225633 963535085 608716365 182208159 171324522 124824280 954671237 204999859 128262885 400594935 1210950 424801662 362991902 600443895 284202067 615680087 317021009 214943694 178770150 644421701 127041422 313624785 433551631 363402013 588767129 448524397 792021977 155532797 173133452 755440266 807806131 111430747 493209470 487656571 840549915 877769883 970803284 209451384 657621662 838065416 26235061 364553727 798631074 323640583 338881965 724069263 996519990 569099684 729433923 791932476 562724619 449251076 690860227 954499955 359057327 884519754 577532669 82389526 614846944 508803317 774152839 74048858 1787399 351595117 786529711 833040550 322127540 649415431 477053562 230611901 469620590 373909719 657914583 978133034 351875113 50155263 385867969 331104203 292099501 528171686 311309868 146866809 410456420 147991921 15731925 573707564 988635742 30945674 878185911 281095260 400759500 953356221 167893891 974755192 900315845 296811326 536599356 788263946 520092321 855019243 143247283 744304091 235904136 259018800 75310155 523986927 195659258 810280286 244834509 96420895 700149305 730966357 564981354 922425515 607870819 268600096 208837014 81109984 315025160 331935808 657571256 187939512 72504905 259149169 817042341 201246915 999402855 981599904 482207574 427512166 596495919 487972328 368266810 254569347 799862048 288982729 748073257 263699607 980365886 882953964 799589206 477226062 983504899 627240444 775858314 345696633 402167119 131431852 664638280 897704531 577957154 725914222 638908780 508045464 303280432 259155782 548071983 523162814 58970324 263610425 171136417 115775713 640835849 965121881 903672346 350129532 532990367 429146017 522169813 410832089 541507139 379061768 678098323 203659788 806562013 281058584 47299479 836009333 153741617 289705410 394872281 197034472 175616388 287788368 794555997 279365983 536347694 298743817 63040973 748043633 782779959 964488434 226807074 452404521 203503606 914268990 887668112 301981389 689623799 114947628 661317951 734429467 502643098 744690142 427778145 104370086 695039595 251462370 944728062 357769417 909584041 74897758 212080973 623132452 79594941 729170818 971832906 110703882 980801022 971936006 828904547 37663527 196063910 493623181 925931203 714031771 815489118 725437878 881800231 778260040 906167170 888118594 834117992 285302752 108426166 200302916 559154473 552845145 726069315 333331730 626199368 374067914 895772688 709718359 598806925 99194268 85932632 612381165 3115327 182415090 712221587 446973755 376697196 192927121 496317105 881881491 208705590 187537898 970648927 103019883 363463190 978746743 418652088 845639976 850903614 403412538 528839965 13334818 744063136 447042527 665077773 39727816 819166994 744346380 608482035 127436165 568406111 294655515 110829487 504615438 715716984 762833748 675814614 100101285 10874085 780455102 511713449 154301386 962498265 443628561 892215718 417032938 158372425 633524227 947013521 837771220 361347403 828197517 571794754 435877978 901256202 307683412 715406836 132905254 600897397 372485681 711682810 894464771 301015504 354614819 370140158 158469399 893099125 398775086 104872674 581275149 397950849 231073735 939487502 809514269 862936268 406568068 88358885 444203080 497304307 607918950 698683365 709045961 42773186 400805043 437479506 506015763 190026761 856196800 768807185 707474737 277482625 64590606 170025970 250524959 638051950 886217527 801120062 85975537 587859902 743391040 583180689 766235468 784146335 886336871 415130482 858426863 739055139 848388592 286888658 437900135 266165231 291513535 478729499 108584606 688085650 280968007 902870493 569917360 570808587 103291495 798574513 237245841 93699259 247756674 594168842 501025357 219937970 543142952 824189618 16255656 445340051 997338179 306842922 251624990 648835509 63101263 60534802 679531242 209542280 654404015 861914856 483829743 607208343 783623601 200826829 156091603 205611239 821187089 731166156 609971272 261327788 767553453 821607223 460614871 896228364 273106542 855447056 704775003 939906859 743019203 444001422 672548984 768460499 845722340 453259446 315197957 489807850 550426403 208411690 720558959 59250567 981836115 194686273 416855839 857942215 39652755 609810488 971746633 432741411 256688876 9654935 38865921 239666236 654196575 598678759 124217965 822368220 901900585 693925700 952048771 208648481 590570334 589872071 176708709 733005786 378910944 379743526 655334424 239396423 470110341 761251086 728981170 906489427 598450254 622437405 308010176 723086997 650047269 640558961 405552575 488483647 951492741 819965836 335175341 398047611 895268736 35507780 683942558 726134473 846351615 240047893 40316251 507930297 313566352 906203509 987607224 39594744 529532168 125572242 525133899 578826941 133963338 385219947 33279730 270762573 987373359 167376872 315159384 68395366 767243789 23905953 896513815 786894657 495124227 27896487 191691935 654058221 330592152 947874785 995736823 205030986 245148542 602769086 212590761 329475141 13245746 138299748 124877310 624352468 793115002 421535159 492261227 200348727 650238719 917801792 558995511 562568201 281866454 11255627 418134163 930650524 102337679 402923851 706699003 821346356 448381778 862150491 375720760 628242703 780963485 877832050 269819892 446164604 528267417 914286951 424356247 763847611 516345823 127640466 771843545 707206968 86521380 526706337 347897175 358923927 86170649 406616353 187910329 390810282 846087957 230867196 542409598 848316896 865942439 355976144 538374648 45349218 148104476 21402811 824857883 916000642 803252048 922349462 677837213 83638086 358191059 105850721 348126747 965678377 45231769 52439503 799509188 649804622 254474016 150018805 852327079 917605132 453882873 399420993 338237557 423161621 715885505 372426377 424701419 709692678 346885968 740527621 651862545 338066591 710049247 75317583 456204531 651536042 725067932 34008982 58547810 858177536 51142219 184423403 9647767 981996765 379579351 921837799 671069153 958758920 732998479 64656046 127196151 418691811 192147475 359074299 283224221 694226797 88408027 716898210 745999040 237691275 475641889 671673138 599880895 937024069 306063086 374375030 953045974 386887719 154692521 335495445 481179365 819815946 695430644 897097342 413777994 355594840 867904761 126734319 626540582 703889528 615287819 276154270 50437837 313158668 483059534 165952353 531146719 952203582 140277283 635993080 596823795 527845947 661595267 446852602 261257336 731436760 596305730 573348505 151440527 904333592 304923128 859386106 634860807 305632480 335992355 93332010 85343381 70272270 914796259 475012522 970719851 357712266 208149759 469423568 231342027 549632630 964906759 485524389 852986901 850053606 13044449 469952847 316895831 871997571 338388134 626401204 494733505 647741518 567701933 863677041 978537369 926116379 339659081 139208754 127980048 152928703 752783775 350845215 375453745 575773636 488799681 621120219 502907613 936529743 121485740 510861171 263664898 318586198 27287994 890260084 575404686 562471645 717179820 123642802 173436790 679669966 74711585 725869725 749387236 978139205 816581092 639173595 790092658 524639823 800951313 454259022 826367448 238595644 482629117 169068022 547502621 509178307 143073916 441363395 123295539 715952649 356259908 616899164 409195530 385721959 673254529 497280280 128841450 294901599 413319490 880481434 880724748 610563712 847308178 315655469 253087519 179047994 943379986 619476570 637022102 603201463 349945525 942503915 151694930 384763535 735031241 281795885 962824170 198387639 6982585 686667356 831894503 578231178 203717963 859908696 60512733 505476043 426601378 795475386 87260493 577219053 623516903 544784536 318688370 533227156 870402362 102891015 742710966 529053507 420153487 355948168 338730956 55739225 542665267 781108034 657117047 803960864 629328165 664281302 597065841 348935059 444341096 104322372 716916301 560224274 419335086 143662786 155249490 472865073 424080451 234734770 627536669 510172114 859136082 506354846 58220018 159377327 302896128 1721067 369878126 445239407 369776964 325687209 349551428 458748490 849603948 113747052 347436968 897234602 167641026 782550406 676357367 127198698 151524711 364914903 492228428 91661496 623973798 868431544 66189161 421446020 672614101 885349451 706661415 461056022 452871132 611731274 222185089 783484000 8129922 243257280 87204047 482213321 761708723 514348199 54184936 548152587 627941464 498597858 305312794 857025464 574855024 240471792 257813218 482862074 180905976 231031028 204983552 441677570 552121694 889427490 599713972 323248589 471873824 91355692 342801425 929019124 877686154 37438796 239998544 376694849 516200275 705321215 101717959 343162825 666753772 647961211 589865032 185880386 586936906 582682187 984649485 531361852 726086992 522505730 386689724 480946081 447896154 748114352 107619926 5520586 721985333 940495358 494595355 181464253 777189079 827512899 759747609 693916603 464299876 652384373 345280286 625610025 960044617 231741506 334380241 888889771 667391492 742132224 462421151 150545574 214030770 699746528 872571220 701413490 55182608 578520630 989072670 672192841 54698613 728949438 163235390 868596716 276081192 323511698 79506599 287277682 373390306 747832385 369737769 979616808 396864401 202853310 747098427 344365674 452141350 325678064 174349682 346950880 865237495 241631759 358602960 395300708 950912940 726882847 636918652 970177938 496349001 338942008 530146803 248344573 487226191 948111533 93059882 997702670 322248136 580590178 990442051 714451111 745023780 514171896 859385088 259792740 2100666 151634592 649052093 32618561 957368859 762971023 196600711 386762740 170141401 362038452 497745662 916576144 756913695 706243709 274866514 397135546 2276645 414528000 323339553 254072556 962237520 756720546 247873462 264003837 100876322 425941759 737374510 307397999 453221619 948096923 106743544 603046653 573764131 689907259 899919612 277242451 799216722 423731796 891698910 281985994 121307614 28743362 97308961 187447567 335259923 123954635 708416360 757274322 448310235 566237325 163255127 960360688 338413931 35786072 511541317 861463761 65236254 397156592 211782778 316144763 812685516 219822723 786627459 624264184 480518870 648209005 403980521 581275487 570818342 409704045 883119282 312315247 512157307 550263052 902949579 153491982 691618549 36050093 199523223 785836412 844812308 270370661 917974686 259156564 509327274 368129278 189143496 550312066 914909516 973805901 698400780 548969703 147066596 119435339 214125977 898852960 988246997 346309479 257748253 375515535 859561294 404554229 455114888 853128001 213485290 524282763 725642497 592217753 708716269 423400484 17709763 908891076 960953671 724965775 392579678 294234751 752192701 183512741 278024792 484515039 154619495 136828525 303779703 246053946 616309506 126936053 489374586 589574347 724904606 882791787 379197970 356385949 44714009 463502776 293377912 895426645 295089416 281665811 470171875 237908498 185330751 27367664 746540361 252050946 431651638 610936759 889037904 67959085 557435287 268560180 107350782 926278215 807630675 519444985 199756870 734520771 314783963 233159364 276247896 78249108 991890047 132514119 921707361 33562670 2930154 723483694 494624630 430134609 614887976 316070720 836735054 41147160 62323532 124089787 731138023 512147858 324205779 130136455 511569948 60200834 668767522 115053780 229279009 956689788 662669221 785451561 77109706 851393535 913304241 465790222 597876047 712374558 497517884 199342293 324735672 101588920 535387110 818604598 579975470 462706089 275009207 241953877 766074713 377924070 634658252 407103855 47022171 792937083 340430517 726317965 633271546 711686255 461972568 543405116 250590055 835097619 149912 466616003 658626953 485047042 446417865 506329605 259410543 376561236 623585818 118037814 759493804 503619715 631854654 25766954 182224768 440892596 368645468 854187263 887282795 903850328 653035699 218651786 817895761 404479553 982991642 388985723 194802242 567152486 988217178 634841397 871323593 306787783 958112015 446415311 2210463 920689381 115824691 71764575 210345440 593568601 585277797 552935712 803344751 911222923 894082032 205553358 35230688 544951708 387017965 269500760 953342434 740230705 623445567 319429721 427747818 59770291 84715898 278813301 289023933 180870478 561685652 669271574 940250704 746270044 296250992 283496310 630384240 999841143 131039425 283776658 906369374 951546275 596198528 246372486 382694934 344197120 759445262 52188567 362383154 597667719 784624019 24133336 338317077 527660895 845136868 743682974 386810300 515591274 522371388 977595772 661053915 737483244 893388741 496513191 817360408 925893463 519615789 395309249 174059737 587519013 281772348 728443733 884061462 296300180 606378659 957176417 161244583 825915120 111876309 143640198 258074939 571917521 934232411 224051201 708725142 259043852 934047503 805239041 5873967 852881644 604854494 641018288 956612393 328341691 245141387 142856015 841622658 649360905 938628704 220705751 839917289 497152183 790912203 21502790 422161919 242520318 735419127 562618912 641721451 438485618 580811445 687486846 95653463 596705377 623910964 627665849 845549658 99283324 182110770 805359879 806937451 530659980 555338170 108142543 272404318 717843351 114941584 838882233 778343145 745377556 202250852 673961607 843818896 452374186 140523380 112135569 69102343 108751458 361632164 782006896 158226659 358518055 333683281 945132935 721330089 522564501 230747582 115757358 524899728 402339688 924441946 802750417 597288025 884853511 451005369 617865795 640666839 167734695 5280601 834515538 826930635 51824743 598144549 320522433 343920635 687602330 274559410 456598431 737974963 613218747 802433816 380357469 218434026 799779258 133577676 878830955 561337446 884575971 527335224 599239518 425264950 960795526 348984976 361974261 80379184 13611042 566971084 960077441 287342304 391909796 91415200 327101383 192505740 468012324 541347531 214172071 244713161 170652070 224614852 447575306 3506256 600565903 322248189 425047447 508331516 805331652 407852319 748323025 263338912 184189504 655842184 785404767 413405969 893980044 159779449 937169845 405758960 28656798 951279392 53111380 513802005 984526289 244825050 613085183 915066813 713466690 425605991 803352355 517778121 840164384 570383088 891962640 27524019 807457659 303807354 944660797 314388652 16193580 307282663 730619374 920619910 180121765 123403815 835326327 774232272 792963857 733931458 520145300 801717300 218575504 655743828 640238858 881045467 33956566 306967394 638285697 26304389 554578260 371486060 138687313 369587618 954770400 816701352 665500147 236524872 457982797 481643174 49931639 767897581 897381115 699636620 516732887 55252501 536291060 109373708 339259135 271559881 596239035 457188783 150418085 702201433 56458142 258696563 488793244 177376583 445626142 57763514 567122081 451008028 522087000 693082287 333936458 472495431 825709769 721025884 722221865 546522917 758464787 442377817 988673381 187250730 62512201 698495406 728584158 583191088 480290320 765083575 860819649 486309860 134123431 180680494 881139728 679565328 175624769 485436290 331846498 256400052 176663041 946397671 999661492 762740247 868796419 853740675 368938491 452757808 820958393 518159568 91910984 99807730 713520619 369956778 936006647 886885364 308256925 408698662 37938578 635619412 915248961 985400569 396850495 955922884 121395714 355679786 118144175 794232457 136230923 434344667 145702622 218031581 87842815 372971767 157266482 866835870 10319355 319340911 625306076 664281810 716372505 613597533 280617343 713317643 859807747 269412481 388999951 916363478 309567283 438215750 347676532 783686199 517137844 904225474 437291734 584653588 483819360 624096085 896603276 677248123 964376671 98101308 612380192 676252941 307847607 683872211 15838333 550589451 870943106 235583101 58520803 859884993 96841737 362360555 483022645 684277376 81331423 637893294 489239230 522475039 3499892 492562543 155472867 417389115 450199624 563139751 442422221 526782958 93275256 555460136 481053830 672436782 24566922 998177298 705698489 458883517 214538707 806423881 13818385 171886735 983653096 341347372 889563323 444098085 451311048 743642109 145696934 174472251 359250860 573567818 301611029 951482369 440886760 965517090 617145898 300433516 11493213 534734883 847507618 667957026 705341544 442182702 659808776 800379931 737932828 941800104 93869908 136347576 334505280 306842942 468217433 708457152 173685880 501127703 307336024 965773051 271619215 527222617 885625445 295031111 500955963 965339826 875052104 982798018 904176961 159790031 569658247 147644555 508880488 215415386 584604881 267854644 179222116 36491683 794628253 366087856 886618005 659775698 906250436 64512993 176360320 526412359 182363814 95763420 873265511 546822001 960552032 198696993 58728947 140787584 340560305 88535654 177631372 73617216 657232035 465681344 746658475 600397525 284544737 233471172 667331305 174888008 205981700 902415495 338046469 981829032 708825678 450920533 928949905 801838567 869342989 867392787 849916646 394897411 881130516 193804783 805116947 332809276 94778720 974418849 841198115 72664778 765034838 688501506 999766041 558049287 631154922 342432275 509627688 427175093 700694755 122006216 125838283 347266904 610965003 814025231 547016610 856675994 253481040 562409018 505969147 48607498 560363263 737263709 84408231 407409646 977578199 127383728 771181095 484674951 708990280 485508979 318069772 240853317 321180093 53114166 986661108 462931494 490723281 491447214 439357096 612709634 653088596 710962181 782771003 466834172 324258683 259472105 483770326 810752317 29782884 451060649 982787949 762830484 865963038 648181799 219841919 992994288 139607516 970809879 51270310 295644491 411655161 935010634 147285077 873996226 51639669 211567475 397396513 368531853 91371126 38230045 288640881 11424552 341943630 402922305 316829043 935997364 776663538 750870896 367714019 590317870 723847475 588171532 797124849 48891928 430389753 192145252 191866393 494576403 177924643 693271785 919030401 234418183 534060264 135060089 458279691 196387601 263627851 808525884 629474521 190962284 506637721 482912740 899708270 110338650 374891086 822938510 621027842 684929548 282271054 174653905 286189637 647142664 419934204 311507319 915481565 183561203 796081078 8132790 958661036 346349543 277929077 348763466 744979832 131971937 433318139 251734406 105376016 976302601 239962768 449305159 517684064 945638180 596577659 837472968 356505677 763527626 346468885 19361711 101536812 167005385 524006484 429653136 983690651 492761838 146841601 615407732 545304355 657838869 106791912 846879030 12615457 185524404 154995652 750560628 455520909 623772735 167250557 220333220 939904723 123446215 960936312 492557811 382206401 237464184 486441272 529159472 168497431 252432586 961233737 194751285 883471007 713001109 45872726 21371032 21465708 2174489 42850458 259848002 384185065 676164353 472101595 572234176 46265379 911425909 245281925 190912130 297848670 785600737 236764842 107518908 135800234 398361178 342051208 300505800 22905757 888827181 414304558 681302640 491814848 634506878 318320556 114700176 170638551 190360302 330074100 728924549 99480792 559708502 700459871 578002785 670555427 609106096 482052133 298927300 338243456 483995248 740901909 899847032 285704180 887349218 349905147 807674191 859505201 176825612 864880116 890520701 228315783 445498497 280488249 7815688 938412859 908820976 459276477 124985281 509378321 886609510 412180712 191955388 449742508 917078471 647107063 253032161 162994763 301100395 972160116 952645988 219633313 471627156 69111390 656432711 804540913 577602772 747415022 575647257 455802415 927326649 388903268 581881584 670893405 655510590 918802052 809699059 254730075 391717491 13951187 323459307 500240412 290556587 856232917 886986007 195452572 555333063 791092163 690305156 352711804 378614654 703812282 884966039 559064421 38576781 586778602 769532192 27760221 184342005 5828040 912843096 119758135 266963129 439766195 568205256 113015044 351306828 754997350 229373315 172999786 563114274 785593711 556167928 37307923 34801443 286561783 816277119 630350012 395823273 673990576 491878063 104868573 396157703 386099432 265544692 613785907 959341406 397917600 795181186 571592077 189887202 432721640 855918711 843338422 3553348 377366798 811237002 915334591 119439946 628927225 695383018 392746392 561594313 235183320 336608561 784735446 743994068 137297618 870472842 32827630 32281533 396203492 972785891 590212643 664777589 345120504 962286248 978795168 253747294 346270530 788173556 88473732 322439531 344765178 283539893 234174648 395531008 647284415 472715462 229745351 995801486 840210532 932364108 852697460 781782233 427902926 462087764 539214163 58636143 58578238 370259784 996241876 733470400 666986947 947979016 527534617 81599841 56768046 362427291 151099272 153344708 445744078 645726526 469409080 166019918 238786884 969419413 537519535 793994840 997466921 571325808 931930152 88512501 943000760 239903915 518310898 324995258 926392627 786529106 410898847 245041807 664432212 681769417 228839403 240104148 285881296 60524365 155708529 876819673 18585892 979330856 390592200 776632992 87179800 931887766 565425620 876920475 587107326 465669634 866042074 743155730 255672681 643121024 160714260 574037365 66758013 649245735 793596419 952959805 905061681 311942474 104861191 676056705 281005175 909171781 629433248 265394865 963117668 434598370 251437764 180972235 716626921 720006066 104928938 107040427 867680638 467682571 717978920 794701077 58548343 563511246 935376610 972964152 894472482 6653058 450768629 769117509 604466832 435525829 874615354 705129998 308570066 652126406 878944941 213060969 870426968 344899404 650203290 48270054 642389210 256809113 208793560 574524061 614377058 480298811 42854876 527249612 934914956 663450348 862929824 256216647 985507736 907111790 575513764 627798204 772150235 836239791 350286635 715081805 542876258 711633504 976213235 42300822 46647794 392456844 603384929 814481533 751023426 390590104 245286532 183911227 983536348 152671501 21106141 180488119 259485348 407753541 933395663 582186188 586517652 173083439 755203360 280353106 199138256 729998389 950966367 27793462 501893780 620614588 636905628 597823126 268734202 870350109 517871 511797349 275848935 465292119 104110293 161729787 841500521 430238367 699686350 543594068 206370066 716894408 871156320 749444877 537464936 524209706 396150578 482867995 151661522 413650630 963255952 437998969 743256719 760253871 397387034 764456917 337325675 225462290 812945116 376481325 505537732 764957781 892056357 629485549 743616107 479088276 649778958 366471870 417557392 596045222 919690638 140342428 539804165 37420815 712147512 651991591 919316382 62586598 330818715 89788813 135947287 244058145 567317157 306636122 909403783 929625274 293169274 644667579 172860390 397643665 966638874 553001207 15875007 38941104 694568304 616770299 676121712 316582717 286580612 62416244 444194808 485767237 513105344 576376946 232651061 306252969 443962109 673352834 536338940 377264731 771949945 640004147 408107540 130963179 199224830 583305564 508854061 466621557 958542409 871413707 731716969 731517635 462891994 981939368 29871451 922467539 748011094 992546300 124031151 682170080 764394999 574014086 797840962 583817616 64431321 118796753 651376298 188613577 850541836 5093229 782338459 711983741 971807085 479352465 997022970 392758216 615880014 840005224 920870895 652103473 889927008 684673157 257668725 663952845 986294465 669604770 507082518 222584489 454590654 628569782 264152597 760140596 727583059 741825806 389208090 895488968 50148333 42126925 186495533 140181373 84893844 763519759 812532290 624215558 796950691 703682310 497020042 498629144 895674761 616874645 345456986 967225898 317690299 388180817 262330442 208171181 675742361 77629688 541358826 493040887 745103894 344518298 579114188 19071507 219930982 551615917 636737075 804498139 529819909 193095328 391045589 469615542 47659400 940201635 838593890 720188005 550179461 337801527 249679685 999552016 774643172 275397424 517338031 181618809 412796519 621898699 557025171 660323771 780669699 628309844 413773295 95339392 948578478 476947826 327175680 19253318 404419015 701527101 625792144 236753498 179592005 130454189 142709203 352670422 512053768 47255521 342760368 927867363 976775114 527653660 728287024 109851703 772197342 993320019 932578479 681090882 462420484 160540070 477189259 43244701 301175805 742261627 942977574 230023498 9228309 862936741 236523397 349083125 591813150 621022467 325097383 349200119 704633685 786900543 703408136 424855126 850679824 963571353 529170603 925503349 103023918 441865648 640025451 594742831 804491398 951378290 92886475 222989540 833171592 586947159 2383886 862586150 969369350 687050201 760898670 743691300 563589990 915455942 695567320 974349253 505299566 2646741 692886869 840511687 457987995 607913189 771116910 608130740 89119033 607125118 70460818 531470526 584794941 370213782 997258089 725585225 823344731 685926931 739681572 343273739 215828656 205007715 272085553 287359455 137603461 829450754 266640863 454613328 906936909 944106661 615181177 772430235 209001888 626078361 737554849 277547662 736086713 805567603 995241493 698402516 308332967 39045503 515022402 384765167 411473348 484753095 344772596 288873718 495864730 985182656 723254462 196703640 41681877 30341150 897788594 330204907 982202560 672533517 458754671 200765438 65321522 41580360 982953473 501252021 450698588 488130784 499317698 458220754 695625730 475930714 483932248 144158746 451585838 396722929 335074775 256554364 53012903 699777240 878530612 48235358 910336416 467519381 516413928 916668338 153427870 332437042 834435741 182387700 94485721 846699945 467165320 918940942 630517965 269837592 715111056 721942206 827635812 601247517 719816469 825259550 683016718 113435291 852973471 89015206 370485866 979220634 930559518 766037805 961875655 410927390 176154567 653472468 411805199 644661378 238546893 635859638 294056491 804332762 241855020 514170732 114842566 733050805 240900348 501446988 359475525 104574855 786792338 361780093 247525706 642513087 399061583 996875269 292415898 960751601 508959750 830921555 85876555 315900509 882032207 313748816 873909870 61876889 615788995 39386951 878716816 489369939 442899269 114201322 316725808 158421902 873407554 745121293 726452731 175592355 303706998 122137907 626086748 608716292 578958841 16787682 896979204 377449742 162348414 596434965 9899615 255453770 965417573 498540328 587852239 456459076 840155893 678001457 7053181 288059768 803899308 40766099 710726041 617259045 770061821 945118815 657549923 529349751 617105003 803908108 222650850 146180854 363271085 717914273 740770907 861160338 916652480 22730730 625850307 97589526 850506628 651472297 733031614 756162903 631868331 149324404 444810855 118755887 342300761 673496432 433722451 571663440 167056487 248306305 563958311 69451367 469036037 594845740 926896911 175079597 995119500 758948152 412882338 795735893 670039039 413853248 388052470 252573112 117264766 603605029 864726364 526519947 355526160 769700055 660902420 957438425 610335728 900689144 624269703 353466204 17739921 769755231 76034605 8372928 933048712 628100502 875117033 662332363 75955592 659337172 503795082 780691524 142224586 611634570 677718213 599305804 14846178 804138246 554299293 239067085 30548325 416677535 529370049 802184551 538383408 414617251 695296157 367917192 62312621 537597408 162803361 262080177 909803520 70008593 145235719 499981272 187077853 616340037 956741488 965219641 936488933 187227704 844379294 36287948 473782207 447344579 629569225 168601756 470319311 916313082 827490328 822764031 904534251 720481034 21317068 373029590 426463207 947018741 806085659 921555942 333649195 901102192 915090842 424164372 981361975 776583237 111757684 810462265 181088579 47221954 447311372 744934344 388977923 814429737 318175978 116885580 373949385 650004005 496171268 620144121 391780838 662145296 848925739 235130941 863363194 256711166 387751343 454812858 595921423 823800206 245349994 580525814 913059315 160549634 107328859 885034137 736314335 516316028 832056219 378224359 523458877 99888092 658270583 889529404 202141029 961766701 685014459 446327486 639245204 58954991 6134315 280523273 496186263 424393850 250366064 448953269 788648951 320045992 112483316 81503166 643268798 803131548 630295822 755355763 116039171 854073186 674594668 460876368 94884017 281648355 258113763 972942945 130240029 884704935 112878257 59314339 15169253 897496485 693833289 181192469 937591259 718272592 639053549 295029236 447805721 702318520 652991279 442818674 421220304 986748008 722154990 83343355 898758721 565803492 912635736 153564476 14558645 95780753 563604151 260583102 500384755 658107222 183089994 710512915 556219213 295350692 402289877 552976382 781779834 416046386 737930356 364694761 87114870 263831561 468065860 487323469 2276331 9073461 647639934 525409823 7707229 201620965 341760414 582890302 184942514 402819787 470865118 512547505 340137310 755187065 276323118 151551673 441212277 61060520 831805803 637431181 440241801 841224577 610328923 261897134 869248803 413283887 19968499 483682196 685903386 399121827 744244318 857162163 546656176 582839227 776129910 33745445 522928155 828355909 987327362 352045652 242547668 644881398 678223210 736742900 548837708 823009833 403264842 699645534 109558714 130334790 701925383 119890021 882560028 78001701 967312966 802595287 432482584 703027033 389533324 462376380 495231247 406603324 953133970 243943248 165497920 116368998 599550899 363601121 430312274 340728678 406088608 204552170 143808799 437719774 399124168 381565478 350484727 966096628 987668626 213432388 141676650 119543289 275857405 82954555 614445404 851970393 624375944 823075992 322756002 795970356 190786871 144256615 993165292 36671873 183818391 842090645 639529298 203369364 210443983 475545920 637035416 353234938 275541030 609342561 780613833 535001732 213465258 656506234 322026858 315998212 814317922 919573714 717268034 781401061 767597991 354663032 307418695 454028683 428683959 291047362 539548243 163068757 754992100 10292637 213891225 61253766 834862817 63535268 985863342 874091251 429088038 454134096 566333572 711106721 281576132 725900666 710224771 146278979 991147850 691184998 467699592 235383798 593126767 442033561 769267233 869045303 51982794 194590073 553581614 113593816 590556203 325588983 388857928 118589082 7005270 296250458 593168692 505501114 148649920 744643352 2232282 991223150 356769769 463516411 847203053 595189578 722726682 310080597 566236091 918922392 733862150 234131508 240803200 535331656 7001376 106051483 293836905 198399926 331213007 984683976 904233501 804578830 80944499 102644307 173610623 929760800 479514048 869209122 109749210 148059601 850795396 803327154 505837439 661147640 336775664 25826410 433514455 381629692 38786229 586124624 321207310 638591299 67471930 84112053 855851083 365018295 94440893 118976136 458811025 714317339 39648183 603349517 756318686 159723822 827343758 581824767 561390649 949184371 273785718 637682167 69018640 89228625 907893801 426809613 359070600 773336419 365265435 598293650 260225121 811247602 927365590 435542781 544566258 182955118 556643873 13541983 778892593 759373845 473935620 906991365 351244255 307265182 840300689 615066490 771798552 973085673 930667625 427792891 965054492 131562026 283187852 425841796 474986148 462062181 583188333 644898965 320193652 779732363 694722764 932951849 297060630 784719230 914158703 429751154 85606264 260127386 485130141 965592224 371066987 63635093 794548893 230915305 597958600 712574057 947980280 778962433 589145891 442978498 874846536 515995797 658441592 152792382 729595598 523944516 662805731 230598705 772407367 159304765 404879968 844873118 76266008 300495641 303747892 584111217 430925991 55405753 907067539 144795991 324237164 951936592 483583856 283409614 288889460 858045145 43445627 747724508 263576100 431260671 764489868 25719997 535908912 131124795 160882803 728242105 52302961 240069745 126751031 331678234 215062575 130293877 651893159 404697578 746825956 856303189 97496847 6687821 735188764 324073552 190835552 749844439 894744113 766377134 9928346 111416963 5381266 495485606 634439405 561534382 439251011 442908983 515294173 653712680 374337215 85616151 663908358 43505114 923670540 970049483 50104637 341737312 328089986 942212811 939740679 537656981 531622186 282097600 96972249 588476459 149761048 626010619 72793868 232168944 945954894 521939307 120076902 651282847 214107459 447348103 904657279 738479526 407244159 112258544 573518107 557506280 903637496 21680975 591064970 369169791 425147901 277914385 551135891 766408371 992185647 724581349 366199613 850232850 887818857 708281313 921272238 205667762 522712012 840458848 168572555 804487386 188817199 940098372 938105828 587109393 81613792 625892106 710954522 213084608 19596953 990156743 538950245 238691048 722711288 488168470 526704715 61388150 488953925 622745809 948739833 645598925 769374610 554775738 246010554 475089606 215583912 943922379 296862555 615814311 659189992 170206342 933651899 818609026 243201747 906665287 689379957 437927720 198452140 622737293 498012707 467118811 888411099 940700334 223775054 420982236 904254292 567503890 68812364 690302561 13380098 895957269 934872134 390808698 24100400 872758255 478711852 256154620 885751231 66826666 568566723 357227617 323905586 784367801 309671011 154774246 169732515 540360934 255075209 969208479 977323792 96334781 332230578 591714808 7117232 244487753 44607417 949104857 770985239 305144184 411516125 349269221 428062546 349111266 822162188 733097122 777294718 318472591 167361238 987497211 93899784 676387210 356047361 7032537 296814633 620608604 66163036 667944043 654740173 163237606 620389873 481177302 307755724 644130664 753849754 741473652 285253575 486329008 17098061 26479523 986309868 322133564 938595853 973235806 352147330 792501013 917556457 854353664 167130119 902523172 869078516 277850199 893235668 918611817 577580232 948482148 747147117 468926376 455372041 72539736 484339287 950731388 267238188 58847951 353723955 913391338 606452618 890726504 275689167 232009536 460426349 827249304 161928420 998993196 16032 912656589 250176921 569842026 120085762 447669313 468603106 51380769 799611107 630981004 125280622 305315528 920318105 262652141 516629962 122716279 520849836 997387160 410458663 607057132 856469652 791618352 145177416 995674838 132106210 245073972 467602950 398423567 448413963 108255884 185221709 707018794 798989634 807174698 243547219 92502233 318792608 427583815 290280981 940280319 415090266 182745431 857512301 584276566 64194737 575412219 136363639 448144978 931012919 318318906 595292805 764488402 986213856 92261485 12174268 926739983 988471386 552397888 609140379 726748687 144190497 513478372 855083841 324239425 591427643 565029729 778640926 217961532 873606125 308915727 313621942 819106169 524794461 123538485 779113511 71998745 65024165 541830579 9100061 923833167 81480264 304243739 905709973 619113754 326912517 64932034 150808698 968327504 916557821 261604139 606971270 17265173 820841867 962151138 666404230 53083149 809133392 829594715 801254805 133386416 261451870 558457999 14759693 248525737 822727963 764120184 416434675 747750274 294293854 260637551 707525199 726405078 641617668 870004579 19250148 9462531 265533873 164187102 273640458 565224758 688667698 352092723 769472227 451022575 277681979 639142676 164671383 218344369 770096827 874779982 750993148 551580927 753887836 831367852 267119045 899110718 73016236 436925036 675738200 406595038 629366295 349671410 245503500 73721793 170796266 312817440 599970714 802535188 697152850 71384050 820538375 624329208 17532860 388628639 392297966 906472124 177147671 725730908 863050584 836090742 475777425 137268008 782515225 610178474 65968386 579268135 321864156 28639537 15876655 813946720 211603524 566486629 708302797 403381372 685330481 931023035 738529232 537140991 984250746 555450947 591730067 307701065 489714737 832857511 25165310 567602692 416355074 547796981 233187171 40571964 218180961 54456966 123846364 493465311 877799930 631245266 784418937 824809180 835295027 898004055 35753172 341101786 118385743 530557575 506309776 355034750 339102113 920968425 338739170 777723052 303458038 959676848 314257401 568837573 677486899 433884018 397279048 99608307 279500975 571383589 39401401 353492920 833194533 751992669 740935891 48331240 48616345 36273841 118562025 150811339 165149147 788316696 990936073 505476569 303730211 103433834 63379160 397844673 329077857 895172569 235694658 743757386 92223745 179750667 726668716 793180146 87551613 794462132 229132158 569586813 528810666 745402001 728817755 528603282 812902869 918864569 449698159 3079000 66324854 557634979 504260504 595330626 24746784 647888236 85970606 762210355 114355070 101551476 379111610 629910916 156492750 415561527 687718804 435345390 284948129 545837814 124166295 712286770 360776525 652623612 899568042 989645448 398612658 546433162 306541201 149163270 598437047 796536308 27466067 654170411 141862000 564328794 329534489 942054069 316989394 939357208 627128881 638031726 29304189 966293788 498618378 805588071 246477413 229469861 330153679 364054592 146485325 952031639 727524440 29046067 327091590 877952495 733580192 961280920 52709405 847715368 665623669 335127128 38745480 344726418 647554026 465655447 368852429 981328879 33538112 40444128 532173391 806743994 908455244 373269404 550374764 10403240 877638304 731066978 50549567 463423775 653793839 987275631 17434877 728323960 792538879 34385859 964321100 537360478 110346904 22054640 452776554 597890469 65487087 762226141 410770747 29862573 95501891 953567589 792789819 737846043 713796187 383384943 97118425 645691721 106768442 952839365 411408288 408606766 127598739 364559484 399912050 946035411 473902096 434768053 929863276 750690835 625643341 246392055 451600090 865407100 717609012 585729142 563817171 597982145 939076290 87891655 719477951 923464871 297426540 873262121 663398040 776880955 358791867 138870656 700921800 501499671 69894345 349485551 550181141 648664197 531030407 135334454 864427953 789052588 624343970 356043862 531932156 924503686 870486059 648738662 383895567 946708892 459837156 900998296 526203945 232994562 795179470 162947086 448958462 836890778 31371567 302985035 41000304 941108764 275456594 887474681 540512133 160518619 927326828 968957976 515333967 321121353 772619869 406949263 996645451 512690833 580291606 491434769 856087655 979911841 435851797 565803798 775572315 641678003 968425687 841566623 619835847 424932382 843313610 982450377 439152385 387169079 590796078 47028154 135304339 761576126 516676074 211302155 912096506 123772099 998041106 75991338 26678398 396446558 322056980 260718894 258447428 310267556 300350009 548189017 608510031 638926687 227977472 700478947 177067328 435368505 418873762 948552688 200025128 170023577 540253397 695721341 71477004 515681744 423390771 851138400 988212161 29767713 169805418 480640077 277295757 255523039 79119881 651228591 594320929 200319530 424943998 35517675 41559171 487622748 735606542 598467331 552566780 428369291 88155512 496974841 393856751 419346531 341393392 188045575 669766414 521941578 985723002 851834020 917119247 50979770 436270728 247872221 248365623 744365490 894506318 573295646 974824431 554252234 488251839 925917522 770307011 306733074 870554196 452343441 967082136 478651092 871355889 188540133 818051542 422791757 152414097 386031303 111686988 617994575 482348457 524963525 318017242 570676083 431995509 712188416 200321973 622222747 852190008 269879643 11367948 937804103 913540873 144396588 38457047 523051564 948389481 647546590 746356122 529816078 738933927 981287171 760709869 869905915 32932462 115045299 680955081 145088760 627919078 178125947 410571818 710914822 96935613 587483631 782481515 464949594 652691201 920452811 767033927 33309117 709195221 623195289 43307925 735700083 384982024 500425304 50925666 155954099 268422912 985129310 907251845 803889488 396863036 370743247 109995431 118400498 573304709 125590648 858107031 197812677 198118210 978829040 859843682 661227183 517671818 335160121 403188008 697629580 410606420 985738401 748081936 80651281 176115831 560819429 541778940 831356301 769996929 322959751 742413090 320179469 888354883 949815663 50932768 209783009 649021760 257331017 936979608 995389899 128315872 82084498 293414645 41508408 854253795 391840661 74984311 77870134 758162551 876876134 163694337 291374997 136802220 898608944 908761704 555513618 502824503 460113097 329156622 43349691 478635044 142300473 650736999 311751499 530927787 83062107 463531473 848037510 594906513 766682317 476706980 290477688 86621622 848208841 910070554 319156823 919436655 952709387 460603611 591139636 206982552 930858665 972772553 607219484 137397755 991992843 414815237 47039270 48232450 988256119 110471325 497244312 96718171 217663863 238072938 909881307 988477272 123820700 1547685 374126109 736432201 334436844 671704120 715511291 914078067 306083777 867428277 15804641 178926551 330299380 50663906 801415038 908481874 957496290 528440997 920516914 882613434 702934967 883525797 215734584 625274080 113397311 527874430 294324034 574706207 536380951 720685092 729346233 956430702 814223431 635477180 414385107 259449078 995103062 45834068 447522719 586571161 429347168 348819576 523336046 265300888 785625364 54210292 640328108 379236859 255909307 226933094 346086844 940913182 250716120 760212204 673463073 32544585 484834970 114819854 574462175 480562464 521750263 239285313 295394752 705804726 70111816 778305163 233932624 836116803 159100108 970134648 464652268 801745691 859754257 978464909 843075472 243353954 995282927 422762703 593659313 703316254 538229025 171492323 618999859 855075743 956898646 343293535 307670270 762257561 589617110 425420398 911502738 811165327 605959154 228945138 645114091 115961039 295769402 39034803 865201758 42336862 313504854 948771140 44954321 174520438 478983721 171561397 282217649 170842803 132317369 336910366 745386214 698921651 628710113 423786404 138436046 650487945 828248666 43776060 373380807 597899367 497521443 86271475 428129828 168980470 384754469 201760447 934216682 405213545 616385887 840011416 845126308 521430137 379105719 489651775 717377932 29535983 236250132 175445165 269693581 554507866 149659378 543271494 191151756 18053237 527526267 341958396 143983437 57862720 220165066 945663135 251891344 621764459 879645794 330090510 878222159 375125669 373137206 533567176 405825701 530236097 158815514 97818061 777621360 285704334 193727078 239634456 141719657 352328266 957451052 705652433 172839652 771996596 901016680 514802177 245185181 270234117 7191453 451717716 866217669 628337792 327462177 930262562 684675207 210456011 108369129 293887635 851517437 367706817 642152158 331612431 669578232 334144599 331940732 420652252 730097177 990626416 582686486 308418760 235162175 984661410 23600885 826576129 804875805 69537414 874552031 312428460 880536211 746424526 859425368 554578161 963907073 659011377 97916172 229688499 201708416 315060339 829750560 476025589 267774195 316793675 359531232 671021925 393472285 760948950 612368877 746529347 905944345 115887390 553996703 577671434 577058310 189934006 780302156 523942188 59756241 502504826 713835377 179485863 116125546 178966800 607619911 474322103 581917940 555267249 79828143 427135367 507749119 309217119 829499232 730891135 733380793 651343425 167810303 702883348 527635093 913247144 11908128 455233482 446971742 17008071 509815287 768228450 912680287 283077452 831585871 733272262 853013112 979476978 150320948 392549112 671764215 286266774 457119873 385782031 836796716 459620080 268485207 273232500 703427380 363001210 43092137 994147741 567176616 592738452 603867825 416171922 345229875 270986851 851711090 114587610 608834195 2556426 441503310 962806761 388263416 78900562 663012399 467880232 375514786 659650247 993392055 191647919 361595876 909169036 88350686 224736907 318529682 450274392 302895662 761436310 753818379 748091160 759915280 775719132 661161910 828929482 445614910 65651509 781519537 345327919 825517912 210997173 597128416 350334734 6931712 707510973 187597411 215604215 900965818 768332291 976795523 63882099 878589700 156225153 24678927 15038466 629873573 583265610 234130503 212434794 818666557 529848929 359617660 806479068 404312277 931962361 184731690 122066067 146960149 694769232 182530577 40543134 989655725 896142951 415953345 968781599 396653876 568205900 536730981 629783087 63745288 732576014 245658941 467143166 423784779 782347654 126440559 379094069 939450807 696998646 913968804 376744397 741129840 540843563 686888360 390208538 184319744 926906126 289788867 502540784 860604190 770051547 678251805 687450276 664480552 346503798 293158321 578541965 991638441 713900177 714800028 202663329 294702615 920140528 517356397 739984797 703829011 476926583 740759696 762949467 330543313 94775491 866036162 515058037 512411056 694822047 677311025 467195476 922262814 141687256 248463842 187427125 870875945 158877718 952272831 560323439 621758109 194946124 348676610 551685680 984946045 535261484 81222634 938443623 845273538 496429018 778480873 302247883 37490390 717560052 865401274 554341208 232477168 769676989 532192652 286235613 321163480 758682125 189067678 919482706 622118412 189774289 325821578 309304504 91742366 315631907 193943517 572157061 58111266 300453875 176290547 628191268 87164504 344218920 126294520 278659171 819808841 538569164 238250686 529035428 485167791 570889555 352709932 587398891 73921784 903562943 254972980 384787245 102061761 111296604 948995492 60989980 588368186 329206916 295088262 828863502 453057302 966547944 436608004 134895836 694606837 56813744 322251199 672011406 632128348 59094400 965231930 471673629 815063352 75918141 755013550 375931353 96147752 368259050 222584087 15969461 877749212 583312006 340283451 738305075 126055525 801382663 475847544 661499279 243796262 471960266 398083525 481431744 637301371 37058331 239385492 850942626 985466488 499579597 186264768 969571625 231597565 837471566 329956753 139625392 813475962 969989402 45856302 191806777 238900996 688037902 873555923 445249362 697568797 148279864 358515545 693192065 21988403 843851713 5422678 412694891 847718149 35223502 920514702 158829553 174613508 919741102 680748291 246604895 765292933 160732668 109032187 833377487 128292146 141962822 795533699 793825519 41943356 488003232 132088113 636159185 335395445 611459504 883548325 816789454 486548041 746062398 838217428 21039626 558742087 651137823 743445082 131476402 234605687 438650802 373950188 871009681 782703639 137815084 582361674 756335730 128725106 784851793 484443630 625092688 805189017 135398911 440844067 968561065 450466362 299688551 351055653 476982400 752290958 364616036 487381117 19243955 190175780 775718375 496866602 187897827 690297913 358477787 731027368 148450995 829047212 949306498 601881625 664320137 761914047 877035021 893272169 800422649 797827263 873831762 996280732 921117796 492844576 116121596 303560233 48061865 232022836 100482232 670588328 312800567 822259481 511083681 961154887 2644394 548327101 495566990 285943211 837911634 516074186 518559458 960982046 817533878 661396002 669728088 956973104 339563607 102977997 869552715 521226355 982769638 703312032 195894451 647574882 657087979 410969902 963495419 520953009 972343914 151955285 392029176 230502239 243259351 238939388 851471155 371041258 418626106 343360767 49805468 40150182 420395306 386149372 559918865 547110932 855426632 272349198 665266287 774326266 67126478 632714261 405088069 357407987 438225879 727765471 728067449 886642270 426230551 197167562 373454131 984245296 988642785 85003273 166253332 335990515 996042681 246612139 61852216 762087993 783933235 957374369 320815544 530190838 55743517 254720622 821255741 395184359 368402960 405844020 101031051 166334950 689978499 276854917 797990016 906938155 44648444 201033908 741472113 208197501 209866310 963139799 860103713 78778001 419660378 857952557 830244962 323421380 480782863 632341426 626786935 759962107 527027464 583150716 309939094 267164737 519609334 980051288 742365660 400949286 735237980 449707215 432328883 461003611 533401777 907913696 930410349 375103217 615335932 131772237 381120142 48553881 259696593 956650629 988144364 658360264 552432681 227490211 676479889 361106109 288057401 412808791 810852294 695820171 318589527 601112055 447610582 271936262 459761523 542741996 905863080 151106012 116087789 639593801 806616362 155238446 82242897 168063025 906100673 842805541 479695627 528152848 831851191 454018575 214540986 937466368 779581592 167139220 14093696 191644754 633880092 886040325 103573995 13333444 981911183 250578271 780193258 656895736 407466572 962803080 427964053 494646705 776430102 346120602 306391161 816041589 668489951 155444334 715023282 334394453 138638031 738402171 506922876 489029731 601719581 790817239 906266287 807949736 565551210 590746629 303942177 309772922 93019268 683002381 187762603 293397339 411225709 905855841 94201883 467943198 930732397 19057759 194114762 336402457 970296520 232266335 974792458 269907225 161604226 772417551 217936077 347497156 198435742 456872930 780888752 688387271 49379511 335997502 510852653 402326606 575081448 566565575 319837080 513653231 225037339 83313090 258702447 172362788 28302494 365167002 241004591 440571582 229838758 665166969 375695702 354652538 262203639 352007509 243795647 500230510 638699990 681454267 412581942 366901810 173995465 885571539 516978642 579992475 690241383 175145600 813077846 416352321 283802575 636266788 805858807 659312396 590804427 774483686 775171631 822845683 793892154 934967720 175840911 62029661 341561650 930624513 645214103 422910608 865421686 685525890 461915969 903733632 174858197 462025486 499558685 885326201 6393625 70494312 692951381 685094689 65015239 961507975 659996367 248402739 890665284 386749894 241206470 709924113 788195512 715916653 630703127 854132216 55131159 112631870 206788770 689932896 606520625 598577468 248950690 646438428 83281705 133710343 668668373 151785961 51567175 180951420 412667949 449007788 771902790 268963359 207551672 627449137 650892008 735570269 564256666 331447917 720664624 43765422 723737291 762382579 761484445 930812332 524990418 738443179 842763015 16970063 183061664 707852335 389294428 706476484 704016988 736622148 768467464 609475634 97228248 845390596 471679988 84290962 498582907 851340536 420072599 757882261 287427605 827212554 927477901 977640103 375887778 60434464 391989198 771343010 587942918 353679949 451195464 95655120 408493346 557510189 289121458 849855223 53179403 126421958 157726068 555666046 988678341 850305334 222265128 716196135 563499362 379873283 722723082 837945414 489361944 627779876 842769941 795594238 736595360 205112987 25991457 782288605 341441085 239085080 136981605 15603693 196850173 358508288 796081225 519683013 893492756 777823199 342513294 83351952 729808469 632785624 282265150 903593547 333994564 829211273 356877589 987219914 124337259 526693629 949379603 58369945 76742103 853263256 955012203 103422645 293131076 140519221 195969226 59245228 484185290 838649656 97523378 98894723 928053308 954028417 540849730 916294969 676308534 4120334 788311607 785047884 780447590 483228849 313638616 764443328 776366671 607263775 854003439 666300108 541133592 698944791 908947069 8775151 578055402 684226174 815992578 989216898 572039637 685005176 31594282 158352465 736192474 572233452 446203369 806004941 915416915 543398392 807393557 362050115 611004243 72348905 558079242 834383571 133900088 574141152 375113466 97800621 504348101 421450730 120094716 518373347 923870613 339450095 827672411 447465397 829937841 588236704 915317157 961641178 635840892 715157807 925322011 528918527 99445036 674409084 317991303 302987438 324025478 586114162 284336529 502623512 763764829 329831171 783571205 504477271 767375659 447530112 767155953 552780748 903390995 10258377 911227783 770739179 901062751 925877937 120172005 399452374 40102420 951348332 130778258 249822351 541334044 120749375 539897126 731035347 442462348 437410001 280587965 337544435 222671179 985729437 473559603 341611132 661804918 773826790 482180264 888045624 869376207 75212770 987113168 801118809 581981311 498787527 468022580 908830017 48913321 788990426 36130884 968768226 717333282 289512320 139249125 331020531 950115786 262420129 385734891 594440736 202511169 605502806 354532407 122305489 797742186 689548096 717765916 192350584 136020519 600064837 252872850 466770148 39650831 864100994 863134701 57770904 550963732 252591608 450414192 172284512 840724753 941202889 123248457 578147865 80757687 280274871 50208547 934691525 714469595 728992429 466194598 641450363 120994506 552706752 258787997 239813292 328724607 331792894 721383163 747666653 27954691 715732031 821208853 673143252 587894815 866180075 496456591 65817287 550128031 530211170 983557932 282165912 849557308 637279197 351845697 245062184 87273638 998631085 970312335 109383323 186382517 654905736 140471884 356565642 344033454 731788280 791684699 871389559 778779246 346276508 512751540 546890886 147307131 746943606 808791527 133870637 805932672 558776944 506066019 25972362 976025319 652798212 167616170 559669979 545292974 961235297 56742944 808588029 545110375 976993073 792295760 374286445 358382124 990550974 176497629 80513051 254133872 951706357 689812546 519550545 508380013 175624415 866047270 523362953 772187959 224004116 446702858 601084689 167824618 464826899 961761177 366631451 5615335 955831633 716699091 80280301 47713662 232190026 577367429 597371644 783425939 85148475 103484590 379396831 880216620 950399040 784685274 393866593 269154739 696650833 487961603 505084984 810923462 614750140 836714524 476057403 579450331 384501697 582142886 4457067 434769032 492438464 336958912 620317193 900058921 223000287 216727639 646958720 370474742 583345998 532606675 468723380 433044451 343405169 721611390 462159324 267375991 707190384 37471619 562457608 614434593 851906001 925058767 268109438 574682749 691438052 133385296 311044037 565669747 699361778 843333427 362518529 395207042 225458025 138573832 828134841 944323909 990061256 765478617 612001741 392938774 852227685 391220800 976463725 104173750 562260324 655854120 298223015 70737224 595764697 324950473 502642432 92360063 191141950 965504013 835807103 116274863 510148772 909155985 456594122 747855073 530852419 240114963 995850831 683615380 822669190 490702753 770034751 191866285 579988929 824919867 474714886 871682847 998756732 548989182 340261789 389352773 14022198 31675360 222988348 759981126 834252524 495939781 181023842 769781444 457131607 898846159 37108817 921252124 442560169 340716142 385717665 79541928 773069804 521191390 907219862 719265213 738913898 165870443 57874366 147339863 677339582 996842774 677805014 564261565 50410117 436929605 526927577 780501545 120398745 888320574 174165449 27663172 392453658 305384371 439662808 314703964 324840290 879915583 10040049 149398074 563272010 995984866 522061929 415971685 632311462 23283953 751509558 366313686 628960659 877523662 751047703 595615993 156619603 633322177 955355150 952831200 851603803 55645878 811960890 602179821 988966625 760423979 997381222 67826289 449449051 582431153 826672376 290939403 403503298 89973865 597186138 113120561 476374427 128128842 597102426 831166420 676410109 717190856 631201275 829660517 809561758 487348045 681811029 609646861 705162308 964732641 697025421 123477417 48541706 857824401 206467621 825905380 832086840 287319373 762880656 18133288 669204406 915273153 662461513 125120371 23494641 566866359 3905414 951821025 272997313 720322061 356988869 789909041 651047830 611419755 726258182 724949838 802166092 956464174 151916650 560836648 248800217 581391462 326169659 39312218 160538907 127346731 466217233 41833481 607044003 283059470 820062336 140255455 967033075 947703439 56376588 905060507 860957604 800571567 956532600 856342200 405330141 711688645 994503714 526074581 835667297 265289545 955569271 418602770 288262331 511062811 925535975 822040304 91076373 530721661 568730844 794439807 876624564 629541648 131413510 428578882 25882632 778904981 38158511 733601132 952802922 426312914 180365303 294124417 966996512 130398948 519955953 922929837 146682919 446762151 574250562 790326876 930503003 593241079 202004943 679185711 966599479 966806064 607583364 325095733 908211834 62363794 227380861 60257553 504888639 675524798 590048088 817987027 948143573 885282275 240755045 471805389 7239828 520741797 780644133 857645784 507419657 166033626 382507177 690281600 587552009 693932608 116124297 278240373 794582772 287325074 874266518 564562044 19506211 137358496 676961982 526135193 654130417 534331391 303331099 792678735 882757134 616577075 719871871 739192195 889301169 670120387 261399172 560813734 698113999 363388626 472925270 592277117 685705350 760319825 856455829 795609242 232956312 471080597 937710429 757345954 545156667 427623698 525652058 811191368 872832082 754121255 264658658 535573416 791134877 108638193 182004067 791415019 457415964 697475434 578994118 741934673 731789083 104826973 152444539 713930596 714281923 164916217 362922573 791398431 646976595 660622387 269698574 69550346 294073656 216699187 82206003 121466821 349530683 97678519 351406549 523241804 126286897 559963961 197306378 959986742 235033378 155235479 154164984 32228394 810430117 59324963 898174054 177239768 248231674 792567582 156076761 384669983 985644652 384821360 298788458 72297398 715543975 776953879 459173103 573785435 155532786 664184915 728750982 648731013 667441858 642176867 395497006 171689491 821177176 499600001 784928195 732367932 999362790 35303847 115013990 815147266 917099882 723845751 895710229 928117035 324875877 333298162 232504341 882603904 262715052 783997994 765399164 912179173 192192149 151431690 49392091 170871559 148758616 677384657 520493886 750360405 834416940 229989135 542282806 714028183 894373505 473571658 478070493 342544395 394282661 352254114 539785941 590708891 693425486 508101841 897818699 234984823 468486647 460233243 450121880 452352704 23757968 127579752 257114998 10650579 519470928 968514479 854781236 532161052 68698344 223236235 738988658 537172550 445795386 716477685 734688188 675225223 802720338 158605939 350905326 583241849 808741771 34210625 463960309 393632574 467047206 308516924 320122490 410847237 23290530 588719584 42793400 478471414 866362442 718197999 354507078 314019207 938015262 787480416 582188344 632065983 722227088 782131347 370914580 879573876 240910300 585908286 526452906 578288550 835088846 767620782 520849726 830902668 802623713 138436671 496126329 178808578 960706414 880919212 423234321 724434518 409029712 428972821 563707926 905877121 548125087 820449078 401231009 184937943 666308350 603114759 369638440 399729065 564492391 714294256 393740636 250989059 807546705 35428765 283222220 681489183 429561768 828787641 547511353 480423483 995237045 206467883 273596654 937602025 753902074 266236973 274745529 476299055 847144391 438508198 368442467 948726837 14935468 523958275 459199822 341485502 534722631 251691342 910779835 830182928 920837088 111345452 808323639 363872574 888041754 927651721 71233133 180379497 871162629 196265058 787191064 693309492 619840307 16254690 162116664 634254396 681829450 773759395 118426707 137200626 457189492 904039339 662941379 418836990 953292272 208849388 373543061 649365975 483973266 151682953 814427122 535040343 845971697 452376434 167248322 19189062 945079769 628016677 720394210 798431231 541205444 712373542 297275048 170089102 367390862 421940915 369491391 563200907 709336839 860864037 631225422 750741777 908377801 921130773 459030942 809219851 24177964 806240624 904783497 338770257 2431714 292057567 521853974 999142469 545634456 874181053 706739321 342408426 262569454 885667611 831938242 959313429 74176436 698325798 785480052 566457152 630754984 989153144 344985592 417372102 473004601 756752717 573907431 514721147 47515625 228734194 755561350 96545123 855590178 67618950 117090419 371797118 995796352 251800169 659088090 218899615 560996663 133142919 157058879 211576649 167669199 360717115 928813093 699945519 765498331 341811848 822235661 135120457 291687291 405955434 780810237 484161428 739157889 276027849 116570117 841496665 929632320 305527713 340206526 138436779 315358671 702083945 378275878 453427852 603985957 916010332 26160163 650575123 529428085 438962315 14293456 584010739 190247586 222124601 399386230 475317460 407262095 730833183 110944560 196535046 368402000 735072612 450902126 48469388 477713461 681998638 977104473 29336079 157314475 84397665 261067194 702221791 575353507 824895706 336713859 865487485 350746995 125658710 455761851 48480597 823504613 700824054 830999621 121848396 427572603 177694769 782440943 383898070 730794139 561695317 333144598 390028515 612703316 381314536 760444826 423899887 776034540 583817742 833713747 473771811 314301737 98719681 731620216 397126850 420869299 762494410 884037898 412907456 463183147 394850858 844831077 940491617 479454551 434934905 64528835 883160173 991179709 413743511 69045115 114297935 617730932 202146303 578072754 522768368 914412203 482398871 304892753 270927501 397342552 628076863 622004839 938178366 18940125 468170522 784323067 258259711 531485161 240683218 357023035 638467194 577977957 160743190 261532069 803590728 208905408 721119051 762808455 548321287 993927345 976095549 5880088 523542804 875472579 780816982 726672565 129497233 514505694 449900516 48138122 517384098 839892615 523023324 855763498 961689687 279466958 757071484 415773762 673217851 5447754 120314803 890007317 618223438 318522312 642664398 413557792 968348375 201916663 483883052 555747543 697838896 551570373 977695502 419786305 658218886 595925242 206505990 49550779 792241961 551242260 77067310 41205082 39892675 34944944 220607393 402449770 833263721 411779786 698734560 354902804 996066922 255766093 463360454 585376113 404008182 445383693 656090102 46870518 432512239 256597100 969026511 797435010 914400825 972014359 446572942 118103479 613699949 337880596 514114710 246391247 313389976 119152257 398297866 8083812 434064558 985323533 255020198 937305274 901424723 741919262 450409812 585684015 211457784 477351007 167674602 360303542 108103963 835684375 127676307 101900803 505248912 914695709 929607827 6348324 403123359 90173878 212983931 728295199 612661472 909644816 82718762 888677333 70460836 819039846 523346422 773606044 588162605 393417441 326154146 161028750 724706055 157136621 727994811 343114066 237367619 44467311 65060653 732351820 207710002 630911296 793673597 938561175 282958100 308125316 698969326 629249940 404221623 743489317 179959634 846211012 201161033 355195434 919545937 908865788 8685713 683405311 310624535 657928462 780166117 85487960 240142622 126542490 269614486 81008917 464114871 229227540 495430564 758338905 168690248 748497123 139239182 589272983 148884425 195002381 844929541 177019453 804866054 786948906 933405765 275822035 65861174 52223056 44413748 849723475 408646607 745834611 942365541 443095512 942797604 890744493 164146333 5389841 657781500 287849587 635175056 691670587 400111826 320569714 701822281 94360734 964600372 133192431 935219008 487974869 746132851 522045825 635806304 565278405 64524975 585585262 620714669 127271518 516599072 938899141 258663257 288335140 387106343 44828362 785835873 266612286 765155304 541167291 710145847 921094735 9735267 802260000 216834651 493130467 243173774 704532371 518559537 401613823 551767345 928563216 973040757 599601078 746020132 568576280 572385097 459341185 991116439 415767587 692597933 211538823 934334169 794085173 148161586 205237370 558883463 975267482 536440133 780147067 575026405 200698842 421095145 645375107 767218213 470496227 140230951 645809218 283614454 398246426 946866627 897910919 158424842 268070194 634583834 393895000 675532298 315964150 503913773 708728263 971958900 585661440 849394459 337957481 112403408 419212303 724031687 237744887 524755360 827814627 776165616 929639182 775154453 509035427 144385806 85962158 884809667 258291154 775020484 253373756 724991089 21874088 566007668 786955098 140441683 773817338 731643427 377620690 179922716 876437577 875170906 939568380 452630010 58457168 502743010 662010112 525201233 384639612 907633026 751294981 866068975 551649054 138356884 174419346 732651830 673801475 285143764 472784530 329510941 304917792 174376784 623518984 598640473 16457505 844092625 531032071 579980768 962438809 727414685 777297343 481314494 711566018 229599200 373031809 947391489 429472579 808179493 430492558 640088122 896416330 547215578 344190508 429758828 691591820 818269609 795904668 499015436 517636487 46948025 158564513 36028102 536873514 85193154 877880261 249302546 657095234 515932127 51050351 340250509 588951436 407871204 432735795 789480786 930644271 362725481 36029399 767220162 404904901 683038431 275808583 873699593 506537426 689471829 959177357 520242324 550698098 416635481 152696288 365953583 481517777 460895797 433771381 847605201 124264210 85237608 750858994 804913780 180204815 30563799 567358873 322157581 814899950 671235952 584520879 44379533 209253791 703092621 587724803 594339841 29140410 417923926 210503116 591865274 957579847 51994719 389926737 634532058 29031340 781152339 499920982 75489912 217090243 818526830 238209016 32071104 457684076 121467084 585065706 675457600 439749403 773278012 663178699 122317043 982655895 585169727 68597570 558007894 870438515 817224785 466666077 289753244 714708899 620655947 775498130 950165792 543878477 516458920 687261206 910807227 229183564 984933609 861788856 223766138 484936907 381300688 637348550 978229157 152663629 581034181 993072069 436617050 497789770 730459794 227161175 176477875 802598821 680412902 525793638 777267414 469495033 631310351 510268355 563227874 813614617 205076705 493730277 739515406 116107401 906081541 650329463 538530848 868955178 743153685 675681326 907338310 852495156 61620237 641904279 741223143 177567002 464360737 621729151 694989328 96301971 920730263 743497160 602409089 946113172 396740551 100278500 801284836 87459202 614836338 765423691 222383742 46297085 134472336 170937127 615820532 927617839 887414149 821668177 550815248 31850432 438888864 914732124 256946094 99411236 276599412 131909922 73426990 257435099 899585141 42799615 558388674 427810626 590283295 561779556 299922605 302342493 477881420 644620588 843663259 538097025 186684748 584227934 793995350 216774425 141815279 297879964 379701902 132868241 855186151 281114318 702297244 259953791 803803428 773010122 580954546 115354633 874945434 751275496 928529254 425336831 569255502 204515068 527826731 761803373 832778289 856145002 890545319 658390663 808390655 422974364 593881513 274789382 405294060 398213542 83577448 332352689 634552211 79067199 474989678 922667346 244328966 112469770 403194330 634058950 140461210 496302953 854211584 818817008 86194590 340859203 941526165 286913398 453645672 525935365 3394034 694077222 46057919 879786354 567687434 661498016 728977371 846197251 514934798 107865310 617278506 846227641 361921591 491497148 770330760 886900980 616737835 202103307 197023968 563528699 189065148 319894619 81976611 806804071 162626238 406553473 436682401 81906068 16944456 136464360 125580731 731590917 847295233 445220294 475512973 534655323 131918694 821911731 475491533 416865646 769840694 25788300 466954914 333464052 745123369 53046078 874146521 680404727 836719921 590088954 67907843 977591178 589039503 3940904 669776440 997074185 786110940 863183928 104666232 167145813 601844111 961908824 71089779 870198542 33280182 957609396 608946981 91304603 541379556 47191394 566975349 402239520 444054596 530719252 596915155 922888923 870279898 401089699 364650121 800501497 108596168 239205874 459410013 711207707 596573014 305688514 318654721 943074068 658726374 239123631 112886194 348521013 858232739 318260530 579040564 580283505 287783967 42079348 305453962 825412616 292749441 750920952 27430045 930495231 457812335 533202802 366991914 986783029 748182200 922276191 688351196 773957303 388155792 993293788 853726525 198755 648836329 81838316 244200129 8464782 31298043 632161029 724452788 660471462 685459128 438955469 720512753 522302532 881205443 138381422 151693695 93412096 482234316 160896583 945665069 520060473 240557141 452459125 896575772 956908574 60422770 422812846 237501040 830586241 993411528 777147249 712701030 239532251 508766200 735152978 668814616 814203477 168763340 97267665 346346202 998747624 836188975 175030592 72010691 883860125 180700903 327671020 790242002 788274350 708150365 785294071 497801557 818699107 686652448 635854461 950889471 574033083 463442821 184348903 34043959 600347174 206418019 932238323 638926542 361306224 917624866 374669513 542159467 741820414 772604635 43842861 425186667 340559921 410299157 460894767 453502536 880699718 854326326 22371976 291678485 508651358 358844419 600946989 971628671 992603536 463386497 110470663 372920709 116550814 22501598 870373770 382635035 670687682 386211878 96623101 791270119 520261846 318138052 606857486 14618746 365359000 303857085 99368567 202573983 805751869 337269610 448264960 586929785 930609207 309485328 548651179 577368794 561930717 362774624 125788946 118577455 176332754 120201025 99364356 354562368 963763516 36766151 132414189 778759714 155431750 884492519 807394592 60869731 535442808 475426626 246708783 777695945 730341124 922218101 346123622 100892358 96115528 861459533 874000572 729472171 104357412 153394687 938271033 238362321 188358882 703948731 789932842 556590206 181684407 188114487 339604414 780652376 840638333 404154766 477935037 429224536 146567507 142389312 299016177 269992513 487738987 680656794 553008442 436171725 700947916 786301695 814685162 281934385 759928778 620284421 854763449 236981321 906200367 822763492 873172928 456794143 86823133 210945438 482732443 246033807 156765747 55133145 295663153 97160797 862046491 917869947 739357137 904165651 69239651 97993383 922653002 172389167 997037902 259228781 22037569 693447369 385062529 741271464 578502628 733755754 385457091 719067123 904932941 318684724 257958476 288867885 781719531 244606429 718667728 93092081 477346568 911813727 590821837 456196641 952625044 649742429 291570400 594082399 74266316 951044600 77300904 607009547 778877847 610414092 330399120 355688853 42425516 195193668 499072158 11721245 767153901 676217113 392288775 983977287 903307245 387436806 420436547 912652362 964867173 859261080 695121125 373816546 465770630 76839676 178633306 87372996 156705582 25228573 329203655 32324834 83991718 479014121 506637447 844282198 166497188 957421005 497581710 119429345 397027656 298390116 161088598 608580212 153699917 412527488 525741429 501705859 496056342 917453954 125590851 845516961 181052970 430704705 674582120 295530257 147707976 58105421 219726126 900983939 557004502 768617263 920140160 294772548 558910111 677048519 586368819 22020011 525806077 906327185 217116205 816395422 848760461 719392871 32212710 298184696 759994317 706555995 767270460 312361647 477633895 218778765 632088953 288472735 792706695 716889912 486933965 221167509 921356260 128466866 650423898 870401355 286198657 727413414 743350427 433999504 577728222 463244046 630034851 650675531 640289732 456414924 4994017 530423106 746515606 598870082 203917997 449088717 539992177 931564047 214559016 939948328 689455030 950004522 487500530 939139730 284315354 845374328 110744482 830963116 962717400 217704393 880407340 489776062 555567930 855683552 145207494 440057434 249000125 776212772 120086178 971086728 414616167 651846340 745118276 628772243 562951486 220060326 137970775 83907313 615493140 527542575 718343549 591758154 844167819 992640630 724729661 518499896 653193813 175097 748797114 290633879 232333382 460066769 30218424 738782861 592628141 688481750 107149760 284879441 308134463 168562286 271061327 413169229 946947740 58857950 59055759 724034254 486080856 277445236 632839451 392159981 274062863 875987463 308033061 108683305 498242255 189493669 67798243 561965262 319770836 231356762 435928785 957046796 49413850 453653766 162735129 888565698 159908061 798799951 470556573 861096548 394525039 47383102 826832588 330892941 758290317 511776215 755982514 354687287 489716218 852032003 210201928 973819632 632891259 614077741 38686448 817459218 12799883 322778298 845278822 30069917 165881573 867978004 58290333 746454707 467286733 610010886 256537631 83439513 562265062 376173236 208893252 861425609 312520774 95099468 462377540 312044807 829131645 580102554 246794557 651365896 115933164 63186838 70774723 310352791 567823761 783613829 684261992 672131638 844813851 298754924 483322882 88535458 835863943 554807944 63882271 99094682 953324686 86904010 250274196 813968968 564962872 760604103 812585617 553658959 518048883 112897597 6553560 90114343 764264545 146797455 844171506 244114025 167152937 673777390 103892318 592467729 461260526 836412542 803197695 203031781 451556553 768069296 401103219 59307940 900898061 500323115 228642703 339544170 379725033 161706845 506745138 754264145 121673590 96646808 930420241 149111896 717789831 68330394 210498816 117585640 716436785 198393675 932477413 842873707 354093389 720303918 922489794 174714317 202794063 438791581 298743900 372140285 669770466 957354183 773445965 311083092 848536723 702384394 487331021 744053705 500797262 858676876 708453372 251873713 984123326 960409145 227367069 456027744 635966858 835766990 966478580 43046457 858778905 854610991 286289069 412657147 231392032 144463346 50016950 594419781 512043412 837479396 609158167 879741312 879476050 915918285 286090053 972200002 236457980 624249967 642843987 541674024 377060992 476117525 801299251 203861365 463024818 937878897 644024935 559378560 542384648 839784914 895659447 984956635 876520480 687653520 337090055 323501101 626428237 267182224 327837033 594160656 355473620 74727311 481607266 240540208 587140963 529340420 239045817 143255686 705835046 509377751 676681373 505577688 349171374 646685584 901527300 2817108 646324912 781139614 676133153 835998000 919088420 495163171 897050735 562191557 888959022 851921275 126937254 393954185 598248861 18977119 23162209 13996804 421701005 693576644 943011539 422597808 19222989 647165099 608184106 888432765 959847962 455278621 105265926 39301263 493980779 470708473 468595076 408461581 519470949 209752742 711607129 981955438 927676365 781665795 523385915 90598702 436388255 747074086 114112484 369118504 932182929 693877782 915347003 629682040 349976618 40758057 585250476 877957869 791783491 723625645 850035363 926611742 762862949 777791177 43810971 770876937 134075967 873103444 663769667 192742547 4880907 238091766 225458946 987913694 131211388 513417205 848697863 984361680 667745542 693477609 122741058 135606997 773711924 286724568 61727101 785729881 634739512 105201453 2228009 914223598 300793008 216923405 493724816 974737203 357557367 343441284 233826066 479767148 442287198 142964007 334247902 111264639 213596868 80698271 971301728 585329627 888054682 656984408 473921568 736101497 210043928 122646118 559956427 496916246 296112518 818317603 608960613 807937044 675850241 468021239 84909098 247658268 950458373 32557036 946957458 128182912 637380818 809021489 947023842 584501179 330350055 798298767 70383646 285283662 993739137 423847565 527600099 251898226 573652132 54031398 404571560 338026502 422815670 493663490 187281237 87891953 236423429 832072940 194002795 642701604 308278097 289321833 290684720 440967193 927120454 47531738 518887424 476699011 323070660 705028804 345750943 283381709 284940977 501676742 503755996 546895246 885183035 484929710 902399248 592001049 879647792 108707905 28754428 234234304 334622736 538612416 907620589 680789687 636166075 207324631 775278004 209968345 434695253 743212144 597222571 740873085 265210444 285551270 955640307 347719858 112989091 372547125 280068378 120721656 898519757 341418059 400508096 989053753 379176736 315407450 98195846 475365650 541453031 422883217 81121741 909637179 395903879 991289966 32905172 145905894 324859573 217123425 374240191 939684578 800464908 860129994 88986945 407894466 266488546 913863995 47666981 974025719 258362961 481726648 262898988 93885331 278028167 321194553 248845992 236392381 586867079 520098120 612236917 839886074 652787235 323466843 405877597 30966192 112577617 986057793 538749084 989806668 888462481 443030696 989412354 3413083 502254154 907424973 179677634 5577138 40010171 960047809 321105670 907065354 917390661 549835903 179405768 472026596 138565599 862219764 791970449 742371717 146992834 431359451 97220774 934187706 457660022 636310317 202559625 543873037 795941536 517797682 614410409 43522314 826210442 334090109 909048119 117025477 888751324 345705529 328506882 521662112 634052927 359866703 53159764 440656546 728789595 190561391 951198849 154418488 819708475 828492128 932114844 479027195 712921540 807641428 101944018 906790829 492053469 893986414 78455143 602323805 58899656 452336371 699260966 40812226 686535804 664357487 416127988 368726389 648546026 121918921 342098225 937549416 163097152 144694946 391284750 801741089 188399573 116690505 232949603 761316986 599182869 593071193 101641332 955499420 838402431 846334363 560301088 543873961 140990133 866631389 327067619 435791636 961026108 156997164 921940970 491090759 675185140 701724726 582329233 442101802 758341194 459668362 154986058 722206486 157904797 636898004 276531172 44489263 458989387 702701847 977175575 922676102 126451581 732550841 265843480 964898773 745674600 975558728 222645878 534295219 114204120 819859779 506472389 694925030 607131586 482448499 979090560 408259017 790571525 67274178 445055535 323835804 870739362 39405222 531759928 4082443 173229948 831098213 10247022 890824491 264229639 437908829 811591448 111224609 644628082 733854535 481461019 585470901 798368718 58497574 326520748 910518745 823128181 991244142 15298793 436499086 131375973 695318331 595346530 2340573 810724309 977998009 945285104 3372480 886770894 30760124 617778392 547138591 451854427 902991947 287916032 998644061 780931059 711042003 706891874 444010418 759380052 245239508 972595099 923683733 877974917 56268786 801261978 18600471 91591073 294513251 520233025 654848393 34573245 927362340 497120441 614561838 110004026 788486914 948452294 503792421 515175446 912143311 836265205 594595285 215503899 330828975 234318204 876852608 149160274 789494336 174214311 595733113 957795871 304842483 368427203 752599474 398767473 215430015 356783610 766748894 771996390 972692405 572640550 327068070 123520011 97484155 71126195 889678013 636975902 323664915 655751317 783205779 226945568 200744621 307398765 322481218 838562783 262739940 406484942 707182897 598173287 185501746 254294909 378973639 811313605 435813162 984003369 716641896 341904011 546574294 132256633 421273644 415545423 107854910 478746006 372048720 777147606 932639308 229992354 363549825 806587885 195529804 415727815 797832420 140853581 901984979 917980398 393913681 136176449 303683558 953107971 155158269 557646307 439014376 293910218 284563281 696945127 709900830 702002041 272940431 133006066 989760874 219872375 536632250 845246951 904504025 744446083 988098863 241009823 783345961 580753317 244386272 810160992 787548392 53423863 941598830 63890463 123042843 379316405 936367713 104390810 364858110 452955543 171444614 880342266 181026881 627813918 651630646 989125402 363054275 435149203 394436950 394017950 559385155 989528963 142768124 532208653 301165086 898961530 427709239 938176090 202724144 659099760 116687717 437851396 910945308 508061586 835229602 926252714 745394271 103892504 695708827 436854367 512939336 368471356 121197885 427705508 422552 441593566 102386663 512449478 851837428 255546881 104578502 862715347 524967875 40973189 991538026 627602492 927489237 18140204 736707064 751430330 552734939 370128877 574618423 839418053 608356413 819174967 796849027 420140622 84175281 426341882 140989379 220379906 474391482 417794885 509750187 552278578 903046999 449085797 643635927 839145149 668609253 614903198 655576237 149375052 489053297 815887707 475129853 380318164 4707068 355640309 356268276 746634565 464744716 142307919 112398540 369320616 602223994 359188247 695485234 346105806 699601681 857207673 570464016 376823062 263679066 383437957 156903430 976080461 549116054 310603964 197342768 973226033 317046423 691005559 849352657 368078734 587020819 996208194 478477811 962873723 640868620 436327597 688592794 3903093 996259838 902160009 280396815 969019938 252910407 966560196 762350433 423494282 331559307 884516979 999236477 361388755 293990533 552900900 857841500 391992660 323887588 829451347 693914876 386888863 918435765 871148652 160417612 581434327 791373148 955684638 499054209 353951333 845564187 987130818 328354067 617757770 768245176 284498862 968387577 290822834 282814844 180346500 600163479 264857776 751381620 699892143 297746777 646837506 123104574 337490499 167307570 883414856 892287544 913170874 365309035 477049608 987784337 407247621 358307366 398669714 381589713 609270717 145460209 49552745 489072560 316319400 58568641 3754974 434238252 891149900 146068992 751233982 38293990 116842704 748285158 874746191 584377362 261903564 166457701 80740629 899652564 226703790 669114674 111494721 817964915 955729350 875679532 863299122 153226114 882605356 267164464 215421335 617328373 671998500 851361511 560672494 887496206 540007542 726439595 133639896 967620569 230620615 561210422 622365641 541863433 452793713 474687215 824984471 57944466 577040529 421765431 706295425 125142652 502316131 878087628 251899285 986902369 659826095 256563315 514586025 51163283 636356927 283253575 769578394 634707464 48838705 895788367 6322487 16842649 695338056 887324465 954260734 545268435 804415727 656247709 239054915 468277136 388902075 181297817 465486263 434430985 966363074 251270713 385004499 597905932 285154283 151370749 109182446 481588136 239477059 550224083 752751221 190115016 796724064 146704287 420823774 609513290 560913287 685517852 889662484 552483149 214245109 316799445 297639931 365308205 430474073 296085595 210449208 608694745 455818568 388624814 491890429 697080994 764553345 211022548 820582694 44680646 615876219 196759718 116819614 527592124 356645320 41706001 962948445 626799965 191891734 127209473 822771225 143863853 349786061 567365678 613253374 600357041 486088782 199278910 505520249 743887614 367869505 817145086 460818863 238173587 691014022 757894324 423299709 149162649 999283824 974300671 811817722 208592566 712272619 383213542 504827184 635764143 676839162 550559835 66318771 576317352 41950112 113834301 839122074 461863691 475397763 563461841 352145051 578371919 285482721 875262519 261162446 211102405 700676220 585671563 989650220 973703243 417805227 1092790 501622591 947894573 427374557 956597439 229344616 255351366 50319250 393519412 695309558 4344099 557483577 620495849 966370676 574048267 203839098 511780085 708394735 814021272 738490385 914500600 697512530 923283988 239743354 546609249 861740527 143052131 588904056 562467131 421086258 106437668 25077745 288416886 705728032 806910202 292306295 174920095 115587748 524248000 634440462 681317672 457084017 453497315 726019365 962357259 642360320 71951366 282754936 254334897 363693414 25206846 430938054 965340308 414200993 404004891 592637277 786157244 297615625 987407550 637903062 903401856 718918324 616048414 669425947 611489349 591440860 848817641 808264516 258938374 881299037 48621145 852468347 873367537 763452200 372553459 152147793 303316282 921304260 32462220 600039425 889740039 86385967 28269256 334644297 580978603 631225620 91880514 626746954 597126891 995156112 825021031 800653515 185275563 49167605 109287150 45220026 781142646 157480923 979306798 180101786 291036379 683872668 619552344 820618075 214956902 863449941 24111345 3180989 56666531 757785968 487286780 937312619 274918603 171317907 42890756 230166933 757095237 686999121 419215825 82928630 935011413 406357529 418119273 675690498 567236736 13018602 375443764 712043032 225039712 978300583 349004213 979463986 105529761 955760256 213770551 96400493 944002347 743610730 113282348 906203485 203253327 947938058 564163030 863324156 688345566 968733793 301796676 191140459 958763172 507319018 474321092 924638264 848972229 410313611 937420415 492195805 17494913 660566954 308245936 795454289 305044732 789220238 889619052 545418147 147649559 208766828 411866352 333167835 982962287 936003780 900484609 188229413 115063374 842682276 433099026 792459665 99666359 241251870 867887990 814723958 85676620 999580627 686063940 536876718 218678911 264127469 457491705 711174807 249742556 388223439 459700170 543162083 778485932 962425986 98265911 575720450 953395778 757842561 428459184 901017656 91234892 445530923 339784588 731706275 774131225 268319610 224003181 426679470 288816513 157034557 515843639 321821920 312794276 909614270 731419234 471860130 194968251 169716414 683086821 104315864 818288991 742835628 43050672 260726785 185313538 86440066 298694025 704666494 82907461 463791899 318849924 207759739 138755915 862477257 731648207 437945997 17985883 392987059 182326040 708758461 960074388 662405647 888010182 331816641 573487229 908931002 142858276 855456067 983907576 960699520 284485955 132557864 172314689 613030482 702358060 639806005 513567983 37942507 800139107 92473123 183433284 902941741 449031822 974369526 223039265 224873679 304734001 318040767 305833818 518991227 873933203 204404681 785904879 599935587 516935313 451205892 3434689 235096428 812371980 364728129 33635662 301198148 600437382 252152557 795363532 357259662 149942489 73316098 623511295 36018153 93207521 227244886 835629875 284852944 181740590 562940502 4261993 353720233 119673334 226816034 247196561 358821004 116426633 18875215 770177787 215648125 978830769 879365299 796903626 801005381 316451972 486653044 566331020 113068633 319700872 242756869 287632547 861074140 18709051 275661502 423824288 546826943 67909699 825493434 930558117 384636116 501943022 397843800 132022572 227061163 796752338 867496188 251323729 475622520 355215592 665658257 707020517 279738594 175707863 952703756 753476478 9004073 584961737 328260187 945905945 760963571 190897150 510861270 145889492 234135713 969697416 933984134 240398118 580373137 299749015 625328248 206373845 274763814 954023686 126406430 916521392 596929084 443090746 73499522 641750611 309711041 758514052 235493548 150415706 175347345 550500606 83553545 789568266 554006996 803617926 803828714 158333151 22908327 144188685 502376551 626910288 367077635 162856266 142405635 600513342 242790557 862885108 810038068 824351506 346217776 295931759 668416733 289229280 963312507 915059352 992807205 89555411 587902322 794473444 73199528 773600235 533589245 206566942 728711874 406916982 252371609 233505333 733036323 943821610 17467700 993407521 771424648 157793069 426108850 836287642 755001851 265918943 758006854 519937171 216699016 901837901 442033129 511296412 180269929 761435585 594140613 180841040 665089817 647546940 859495138 272648671 545478311 502299869 52585003 966286752 817397578 976974933 992695317 379999079 833116728 742776421 31299493 699008397 300609716 425989472 613722250 286916901 879946663 645090916 255868649 109406415 845805207 153638117 683066470 364808101 969382126 440318941 611743379 476522989 764435726 300760054 334491751 208652981 508762154 347422591 690349141 965347092 160991225 548051627 922989479 43618917 265729166 73377833 749742425 560449152 614509924 93576860 43493441 356837458 757045122 146940602 317938217 539698209 134902292 402596955 344405660 181060607 280543372 902746864 94017386 772680572 725025257 689875028 928660430 796673983 558742757 187393665 980493941 325992054 304529508 347570483 926078201 766487789 887268424 607506030 986983415 290649142 28856085 518035498 187407103 76455805 104043641 903206064 771064070 164970033 83137955 981142093 805459071 879949441 111291527 926803394 763651051 120063223 664304596 112833340 23289566 83134845 237843901 375162813 108675082 899378501 550544966 263859816 267960941 520144178 216806889 634714298 646968181 903374445 245393575 449572152 355910692 786699272 81442252 129595469 189332646 200907052 427677083 941082971 438122992 348978124 540758853 106992228 892833529 494798204 160849776 765239023 646583796 963776280 423865488 798335549 643265503 323349010 624008851 958880183 738485770 517579880 555641125 148024074 539384291 168016552 681764995 861862205 389079934 528618392 193960703 685235842 30922574 28291266 212753643 124458449 866993715 689473904 647339242 581341030 707507832 338928624 555082973 356974593 19532281 7160903 575667228 129426436 207237248 432631112 466521080 756047949 972982313 873175518 781112604 84620212 440337944 931220413 627092882 60388713 942598536 509307723 718927636 436396956 707834288 66877700 379537240 341108589 645009138 961160663 918209927 803550852 724557465 755955901 928387423 217783489 373792946 934065278 892137332 255288548 277834255 186031948 57567325 58245740 304214179 391367856 486128066 297622486 784274138 27400547 299974132 297992146 916089147 866094971 520570098 529400250 474157078 448700438 151591628 898291059 278203128 593274895 592504184 177911401 283494554 626086090 561539368 47110729 84386642 104029898 264573395 608212939 930935486 800881769 990737386 324951288 872332378 591604407 894566132 443448526 16904298 545244766 407597054 190905396 307361376 583987947 851849441 540416894 713612881 208520617 98495940 462597954 539247090 607776462 983454033 273587522 315586743 412885913 331415012 222823537 670276976 755390989 983921296 729803007 372741195 876006214 324333742 50099385 167888966 656627902 773805766 506321208 627290329 597284140 229864336 291453385 419986467 673433229 138239012 209286814 567904554 307484593 99993640 240455367 351901642 23875526 489307226 105611098 799256841 617288695 368980585 61485851 674865202 458127279 791890748 134008974 595434748 594978584 351175065 700290476 499487691 281596741 253250192 756330906 426123073 490313035 681439020 864220653 143883084 118521319 449618211 842792913 534862890 917624835 616246241 910857089 391809332 476029157 928166965 82216750 922334626 194179361 76277704 175146249 872466064 138686439 990789748 729917141 780015725 737482483 572827992 623912550 17188523 434862233 412186748 360683585 715910604 265333205 680188560 833919094 645815539 477689054 935496563 821617008 493934014 14672373 260874302 681578355 471750614 348597310 461961267 945479379 529721065 692744366 347279853 873048808 411699159 794673303 998609871 742780632 25300217 770638264 868589763 216880572 799477788 645343084 626459154 420095257 712886292 79418220 260359941 584606406 870929657 859796479 575313 962290307 518455770 694927579 656002578 287414271 30124153 617020096 408752112 20080991 70554384 579363031 482254399 942276852 116177377 766896216 289007567 481328775 918466646 283175029 715081686 504969199 570851290 417962064 576412601 583654352 534905826 842054357 214860574 234770132 909537175 894685951 29284885 247591992 917779959 443566798 387332437 433813266 289587511 605022083 324190422 611816644 390897277 677025494 306674441 391390688 746173536 109559074 169832494 625141690 857397852 844017793 515733188 445889881 278614377 676662275 382864550 285571601 462321704 405608886 653467241 970478084 175988618 576158963 751888504 292950366 900040350 79838492 490722432 993471565 822167003 877248715 489477236 828001115 605438126 981961646 861603049 774521421 86903354 775500697 729183205 653050626 82277344 401370793 517300242 749627524 280031020 543936169 280212960 426181119 362928191 413535507 817837957 306702491 256079252 787888610 135187378 748553156 4061056 398911143 319423311 743829822 579266949 418156264 401656668 345708322 65788529 34934918 776522621 329830793 238514542 833539459 546550269 346082649 541571653 804170965 566027067 767412117 146096980 435558539 691024336 740743977 968414219 358322295 497605342 103594148 939580024 525646630 775118794 48865194 611336901 366478423 548013162 251959448 704323181 989771497 745736032 801200533 184030661 582657301 94878330 569054954 913127587 577610087 228990250 129027323 319795974 729425751 719023606 308259481 106970244 8189290 680435534 506663305 709802503 337674884 878712662 997141632 186560948 940238699 795837168 472598315 324791936 625210141 193820790 638266303 406288224 562373128 753279984 10873688 151402786 28659556 521225751 229223638 747700369 334028726 167057212 450892425 933634237 501944668 55074555 122492063 254715147 826879275 758669620 300424911 19745592 311991179 409590774 521162318 342102018 605633269 388948828 637165880 418930717 627100085 376850320 278833540 101580750 314626773 391202020 396198846 808468590 618231815 368973522 222800870 178005901 62958893 295383138 803427272 855258209 676715465 128110438 531762584 666995179 740163768 838133789 177214582 852619586 537547628 876508476 206174272 361822132 50774081 559679092 916631460 225588405 743278662 124485491 916327411 273539683 410066500 348460823 706355656 973420523 894083593 771409940 302186226 669771704 443424532 756752153 999581841 58224016 182096341 748944847 472364355 277631578 466791108 91246105 704864729 455256934 415023741 209824386 523475022 100563438 535220776 426728411 22030816 794753808 566242108 616558546 958993747 507390958 569974199 230432037 212157889 204675762 484903372 392054891 547996900 817938422 168106012 877824709 962029066 785452832 154078557 747122574 283407517 444208021 439107343 730929738 326420617 754925648 592786695 392846018 962835921 662217036 232881207 880386787 188358713 496913434 842321971 369179149 138879428 992737834 188399631 199386194 299334564 108922371 113338173 312457040 695661327 14418948 946776443 282747890 113013502 524782535 880343796 63302972 964382285 989369051 317035305 59386681 265320219 207154215 390651684 59481873 212431200 764241203 399603676 912744541 602746875 9624070 216607176 394241176 296660539 989251367 269981703 110293959 167430559 88902073 316329292 135188583 817934081 559540403 949896268 22168987 61159143 384439685 454938684 211768331 83812523 32193767 682322489 92582422 219296607 756865879 120674667 339812017 800746686 23214145 971410512 68358652 622054149 836096907 573113498 122591521 120745891 544408808 489151508 961748338 885877473 890779757 556955397 911917100 702516569 796075580 23133967 289402100 473135383 533721703 843922511 107512636 227791702 536434377 413995186 399024357 820706089 232749312 951275339 107193005 786776899 164375588 392716816 510279878 782667627 603376822 775286508 502951091 650236191 700358853 827708696 112976997 350983293 206018592 843738915 126107900 169937854 778083470 934666818 808498154 971530316 290457911 265251019 941511616 546103669 504895775 835036651 357467882 797404428 232533832 169474403 691892138 554710730 960157554 851731319 377319365 325274545 752489729 248022534 588803576 322110390 106606726 494220397 108105864 455431609 79518378 415894509 692476986 627204826 347807495 528830563 103943950 569715596 409642629 829392611 375520466 716409704 529167758 47058152 84035557 409090126 330585973 543429902 532478425 237778962 684576782 743094697 17346565 3664204 880814435 525438931 459505892 56979235 694976559 974408806 514478885 236828603 791305585 495429496 358003107 218280607 618602172 339015046 865506023 277014297 882464070 778787923 800738023 741609060 959163415 330100954 221436952 863525830 226126002 213791773 238943994 25617877 387070262 504327481 261197934 800764738 842635623 565321437 323483639 608203976 388994236 592661116 95313964 536792015 185102107 519863430 421315216 25452429 729180993 304106880 369343427 595427133 109560992 796634575 807937129 512730618 859981558 32048923 788510621 76816115 406132418 178868729 381358353 851555371 969655484 141720602 350381999 817075766 473427920 169451991 909166189 805968806 430769288 636330052 349759339 329276335 995926581 315891550 619968639 577060860 862470725 494367807 248931277 323798175 987994465 250232446 363481996 313140147 579171945 803456829 901826757 766718762 194716267 622027177 597967585 89147294 168325978 837617434 82268190 586323076 555070410 999348352 945251882 785048514 292714571 67971852 572319048 614527234 958652398 327098142 296948732 959107163 260518411 737826157 754903960 112163105 707914708 96290520 27610293 7356335 155955913 864054172 551302703 863609835 376601663 517820734 116850176 764550767 137436211 211416860 473813796 165281405 737010054 972190177 53055685 688523402 958951922 410099249 51889123 767646268 314437753 480589147 539171303 192800695 749305872 99812 547955781 13675066 396376870 11305752 978875206 641062419 314020710 931210783 109441350 796779943 702301072 450886660 32865147 837290619 158689705 824612690 176909834 839538705 21299118 617329567 792325832 261625722 719470384 283356863 748921562 570440784 894814155 20694211 889722750 514864752 672303550 436476238 806719472 286706401 496462712 669603653 279821386 224538008 811208746 958236294 398074460 747701791 328167280 147310292 507031333 408112390 26783537 649395472 579055919 569603196 404616639 705547791 651573504 513300944 76246180 517802563 756094574 497808871 941285050 141119655 637673453 137226724 241600466 494336615 80507466 193997781 678621582 390907771 376589249 779438768 551523397 423336788 218137913 836003923 727137301 467690449 657709561 733029142 359039366 877267260 166286862 511629956 90582608 202964770 933643688 56943515 756498267 743150951 409131581 151278691 412849458 6821839 492489163 296156141 967478833 778102911 58950420 294477511 816865278 206146399 68488787 133963899 484894925 643871328 365640864 571688632 701789646 400869982 91743869 534413249 341063016 409006305 366640615 193013412 208447198 615490475 674891409 924242717 38242020 863105033 999569891 256455407 186949586 722461017 337434572 266110976 793463054 338212292 601994926 971682996 896351386 266897238 741951322 236152369 201689706 134220484 552894197 680811314 788929855 923819303 150541281 130817182 249607262 668957145 80884831 639129237 249733398 548734412 682463660 812031737 618169567 691527195 337768452 525117505 238625009 350133259 274924014 272629555 602220098 561812320 611396007 859590295 366408886 469311945 618185880 265303310 263271543 508896830 498696410 543596274 549691478 63815104 915466969 408510888 151928658 940849167 67277855 838929182 863759870 177461929 976791366 708565079 60569965 874420473 765433586 983430590 20472964 888058419 135753142 555395731 312826429 230035949 397691409 839381180 460760826 781636268 430815590 28883192 687394485 234106700 58186722 136972503 695464330 880209666 209893413 570269545 781809797 487458544 419733505 655117326 53827952 503740892 157077754 601115901 955402440 754948541 594421212 700538533 339869181 544130997 298749125 767620833 577531892 168892732 801823514 104514469 423322609 402264681 783791819 718735622 428232606 192306640 527781579 109631029 67653653 377784393 378407836 863376295 884499191 609947929 507761179 630649614 131723480 154642123 625681956 910787035 366666932 534261842 305922930 345592625 887385933 708740130 116531701 709174410 432645620 730593394 839549383 714629163 758335760 557756411 422386892 239559622 805366391 207067068 527083983 738325055 337012944 111302614 20649254 23317278 546118433 421870632 202683655 5601667 726052856 426770168 27789530 783004007 476747677 582304383 666004314 210853605 376316733 366099093 212577771 988144862 104780015 930975301 509558350 696214820 98400705 786014145 626603528 528361465 826527201 880866337 642085432 60058528 541166611 280540198 273181965 416678547 927288149 345164992 592140202 214438362 641460032 270680525 536468880 888197369 287189285 29292269 360749952 861940796 510620417 386676299 670717206 306991958 162683449 338483905 766560191 581655817 943048440 306874020 887273324 126255484 398055315 846846193 630070906 769607158 460629917 63418692 767288233 801339618 594460341 850613589 77138472 359045798 715838586 492556648 517658326 126759704 971092566 87334744 162456890 411458077 871086955 168603413 101285798 988998807 344329155 574215208 687096911 522047073 486099967 196689569 632318635 454245671 666035950 254333801 999595355 563264133 401894794 184414089 972701218 241343436 206504136 153942280 582395796 56507010 809583968 309743035 975285021 262752460 372490179 437838427 789213171 712731130 163825774 417758313 466351875 966191813 80778317 381993151 81248673 34967565 993723284 761049659 837519739 357438679 171151211 108499334 993456548 765822754 928411531 875855328 149874160 381437605 684810135 340315568 684105194 483465687 220849003 75978601 198572001 658404378 808537533 60736389 119666004 121897565 973746663 705088445 723671672 867323542 85366753 296515236 950081462 930655783 314911297 1934816 174579472 668553414 154029077 330949869 456508970 38929761 602350962 367265465 847903086 75422876 980628977 619796413 856000563 835548405 825121391 612515790 54658867 101962013 430723838 642028258 80747432 200173252 430417563 907647220 75767310 465458031 283835797 766612731 817460167 3245980 94911332 324892248 50145894 236600995 54266158 974320362 46475771 302513462 310347968 822943338 974344924 847645054 61999411 420746124 726857913 321158525 227485589 718263590 600905490 897432840 753321132 15725561 385953334 36651161 468846692 119161013 577931451 40404779 850939865 913500664 207277306 563132865 59855367 715815471 733122085 268555815 807042858 725979385 851940781 803660617 607516449 871105502 166379780 742758423 719536224 506530380 824947129 141809873 409273723 210214491 154727695 678216775 992314713 13895649 301236907 935807279 929145053 787833510 634420426 704933105 464050069 538418585 608665688 559761239 971629508 108268394 428997340 941352336 684560932 36870299 132670227 675241696 937921898 40680292 818814798 913913778 499977147 20815436 703749179 571136671 25147034 433499323 673585728 952296576 644294660 445736626 244205814 217819199 697901715 97031667 581990917 284592017 586184484 840935107 524980541 709307977 900762639 726366932 30462973 31979793 805022821 752440831 264904675 629672105 258377318 935382792 93797068 287147915 928652776 349644681 416987625 789710319 519524408 550109535 841217789 791370058 766920453 547298457 218069441 231996128 490995765 966530377 798538203 94145850 414611727 419796965 843835076 894255576 168667731 809062552 487357380 369570662 373965594 629686520 683684338 408493635 608057070 465992745 900240081 386692391 560266333 990231959 494023608 799127953 765480208 290259420 286326949 635008738 118975218 818934122 28427589 455875839 128514477 381557531 837505555 472930134 480178742 517065504 146430690 274948182 335978314 436006826 349382809 141720683 438722216 600446921 419701703 195155686 749797459 572854278 18245485 707474700 124380873 141112265 880910309 524201885 349675179 160982555 940710648 159946137 899817523 24536603 836805187 800400829 806349011 548192985 702671718 528021732 361333544 799333779 777027528 660377491 21924733 736371655 964114172 977108846 614240017 964946188 199461115 651958308 283246716 786146546 872001022 3533533 183647801 208692688 802768951 980225619 227669885 883614320 994105360 110825468 562022560 597032103 431981311 874082944 45520527 904554334 146423853 591941029 492073521 18269445 711990664 503407810 20623465 524779858 569727813 269316652 176243336 39243967 548740947 938099847 412708030 526034546 907304551 298401546 165839183 974180617 42140976 550970198 707451965 46502207 302051757 308770010 28048239 983342149 649514697 198353169 965693916 539737673 621229640 502960459 749228519 494657604 58178103 897550525 259313271 18988331 323935126 449062093 758397692 222566253 900378718 654808764 359378694 103755126 901012927 65230690 874066885 802170161 416379249 345007449 964142727 24539017 831648781 592551991 369598240 578616260 670676336 395769767 466503027 483893170 552348635 735353713 418167761 78905764 306057434 349241574 652296195 444889141 562525510 361665371 614294524 897794210 164878195 640256201 191473141 868586755 219023572 989350484 559899950 269545771 248127654 664191847 23409946 723260704 868997179 45931487 757520111 48421805 416815354 367470420 948204853 378999620 284098841 381216987 362635831 90051278 195309158 317626673 805341976 751413033 731252024 18252620 241609621 644929097 920255248 330719795 225465338 774159977 510905364 960825765 915175423 398897316 393401685 164267481 335253988 112167564 782906289 495903130 728866099 779622164 892359560 838691469 997506275 541468724 147866338 153435999 786858924 458292599 253049681 874015644 626092927 249164928 448943394 199221312 766700815 588298595 768536333 220356247 15043664 71457467 244305969 906804380 35796243 646143065 496791941 286347383 417666683 931713591 354129129 736974066 513586650 29818898 545601959 100391400 509871636 701400435 26891918 717029701 165738192 569280275 75230232 815852761 808124 61553578 671657910 850834896 562772358 270938419 666369785 955779541 849414410 493461727 467178891 725293374 649582730 160751056 939744521 20222789 317918890 987152792 758509640 938198135 261914901 381915014 707416686 568303306 172983594 552754254 924827912 74546612 438342100 164375709 555821020 735638447 854928686 482587278 602472621 959251041 217932847 602220592 904037782 857699393 694970685 671638454 654541586 625034526 356014718 302485847 498897638 875262585 96980629 596578711 723644751 878901439 191536970 238909184 9111473 526242199 138743110 835279964 301738866 967262146 975021266 404385902 161811023 358196068 865938538 30919352 198525831 255981417 207637524 306281389 16782855 889531523 676312427 84330022 132367216 524964847 182813335 285925187 668393712 833489913 887143313 746683312 727206956 584581971 227794218 280082298 653657002 994154021 213356724 368386208 586292719 884210941 563172164 266326238 110901078 698420113 297283823 389374760 101407125 879312746 481218218 301350363 46306836 463596862 786755530 212937951 461293486 882766520 175268978 125606513 330771268 446501786 436774554 194329818 457640726 422495137 276908707 632627653 282897555 59128218 102769059 790906340 733543988 85303680 323798164 459982998 986831151 982833305 318601175 637478182 491271723 99182357 693312643 901279511 416844782 122947524 194652214 97409134 331452895 313649297 272462490 777149109 957482638 24591866 624108312 17099140 888954839 653428129 968731007 540543087 815356947 366180410 990201082 585245882 765868540 829394763 297073479 661397684 862512414 416848019 621935706 762451236 542601251 863692821 91328610 925330225 922816456 533972439 784619957 544473448 474357839 735362485 512529729 990762772 302990424 589689212 389248422 598581907 684743765 614232057 755579279 623700917 956531988 991130140 603533619 830366157 642704732 862963054 625492449 555838792 939913154 36078962 189108359 204415416 711912912 763723555 825566969 242501662 918760943 355754143 602291496 884930124 458391520 303926436 667066003 770635885 354072781 13468887 7594142 177854234 840658740 554108846 124669876 794090343 508004838 551344720 907046329 955821849 424854803 237167715 909917871 590365054 545544272 785406760 930543011 986319905 952108206 597052783 471455503 55308548 908480087 146613964 126438287 463729383 154954534 351139219 75434280 46257132 877569259 382408787 165543448 120266601 126826732 419525019 676290168 593506389 755120890 474166719 677601088 281490898 553194230 29122673 755706086 757861563 780493072 103718025 449126157 287328361 525105398 755434752 581275249 996028580 826549706 436056293 660291450 875517295 262817795 114770292 954305330 540068493 123273977 317694917 796710384 174900778 874656823 320385239 145925939 572008959 361031875 417493939 770653535 162008475 284076467 583640831 140643909 920356483 899865765 287127633 250743178 234209348 437640783 618143725 343396134 222518145 712436079 964978302 741252295 749502400 627278703 605204987 886909960 167080057 181113365 171436593 868459165 60444130 95468456 303401454 611690471 864945634 804846492 999348778 362774549 423161398 715793077 485741670 531956318 955093892 59672649 363378852 128496350 615009547 887205936 692745861 785955443 825893050 552205541 421985670 65843304 953752038 56231274 140018809 596860383 747977435 347375380 732227721 622435976 625880067 419634877 678504473 42805914 870080926 480569925 494013015 726656032 424102484 719985402 674662122 369899096 755845547 499074709 710594172 484606234 832229815 642204834 792261772 340902310 612056793 303831197 610668289 866185291 402687997 814861867 319348377 14310831 587511815 512886000 516503751 521484857 770454657 554700039 485444188 251225655 791442071 241372238 127564178 919511131 146161255 958038105 147840719 693988152 219751855 310378070 521433469 194481233 502959841 262628670 721864194 190185332 646860380 336355479 232976953 367745031 787378326 322309477 440407137 594243551 268883655 983785586 699394833 601483313 753371157 96012194 748944758 50637945 387072066 486136565 363536977 618350724 864279497 789169233 361260276 260233453 818042943 115584370 517474456 643318115 808149107 205244233 329841000 614868227 443643495 360164944 971112372 55202325 272862993 146784208 390368949 869042015 336968520 64940776 541935122 792400864 343531770 778628439 893268320 355707362 424959854 896954353 20981230 580269256 771584130 540032697 743337470 567866014 68432631 602601852 11336530 119226976 637739894 634487183 17565319 412738566 708862567 187958229 115238428 331843425 953090859 275432517 62488126 278101462 320471094 627519501 817699143 207540083 116463957 96224509 450456270 967972119 29567922 867469421 644029289 136727904 160710960 125287996 432875626 410984967 311674862 92873202 819314506 204770756 883521595 124968157 649413463 406877391 279794636 735753300 298177293 427514173 915098931 673126111 101001428 835666276 263940880 777213915 319932319 847541104 208824213 980518259 440584051 429693394 567877785 986630430 494991770 874352513 263712748 424979892 899220343 960202896 626178744 765079793 201937786 695042839 160804646 570554146 463957180 515289816 609407086 754627400 889455759 837449678 350333174 760129479 614500173 364806893 693578902 470217684 368232869 47043504 164874383 296739818 376064659 959203081 619908440 196633383 25797630 617887866 553851671 689759366 113426885 618838506 8169000 717738436 684759927 356185032 518762123 200515470 67389502 819624998 936223511 411335252 412027299 648101358 513884345 905544182 994519053 38431625 720857657 473372508 492078409 470257190 256363569 839814974 308533421 670750207 525933504 133081042 137394363 918765560 653195139 906254208 974840644 98881638 742853852 804931076 141420361 406471731 763842477 504363370 409892865 729916980 525690194 971974954 81023560 970648734 368157265 917151719 768668405 24033937 764698372 831072096 492139261 349195482 928210474 185906435 401694622 411723745 401483022 866829636 850626654 398790556 993835547 278371768 579861230 198152213 206091154 808413986 747107670 215654632 993313556 52540105 494587319 489442704 710578607 522452792 707143887 635709813 78390385 22954327 477219879 540822867 154769816 627888275 745167498 912072435 314698530 480916651 236229071 599403942 419962682 9741189 602736084 978884017 839090167 744235718 544357438 95353300 98794641 398668918 282123384 139667924 142605824 247879707 794812498 763073138 5770129 302815302 298265934 676518654 532885474 716454156 508418540 146113292 763813595 722917119 868393547 792193735 875561817 614468236 609973152 750954954 763910576 871102633 812595247 792030667 315688649 626912840 910624577 619051507 229226037 581121110 625528711 891823692 11903592 800693472 343827002 993842059 100698840 772737677 70274121 676751241 958509362 703283312 817985799 877441302 922144612 453654880 628722435 386180202 822167675 66937523 560674307 458362963 89070256 968895067 744224735 5494439 205877134 453657490 148196349 457438065 212508235 929563461 403385184 268550163 994829106 459372940 670829851 28196849 45371845 579182140 309739019 525945216 160234392 332794939 106467883 38985471 769400585 825540139 898268223 423501226 209760172 382669446 800753215 104537879 910007078 657862913 767827779 868622657 947331703 357639546 425555813 709421331 887930505 758743331 583962084 496001994 539092018 478802465 642101856 482391239 448175258 892373203 266892828 957571126 696457649 206981525 790670409 99611886 722059064 991283726 801832426 816514842 460576838 310381926 248316061 814894436 877481478 530286978 357092990 933853470 686259505 262110135 652923607 514190983 419843960 670585720 398697105 872508220 284993653 678124394 54388489 903525343 763813450 913865557 114167203 742030096 664349656 795098687 756734581 389018842 520439163 311913129 512077700 678331845 235104267 745636966 628900006 365581388 615311200 138333247 127354275 902184636 954011190 214286119 47035925 450546429 25704976 352024543 592780974 852263603 829856380 133734935 635194226 675768602 644405434 349545264 753548271 540677496 41538256 611469189 76964448 883848181 315852257 617979794 208328990 559669616 877497194 550229180 289180751 310087065 269590664 214559937 972206586 790033416 875366241 962075996 961335259 12571782 185612760 940102585 462047615 516194385 631844531 65591460 222771487 528880464 373019646 968189549 894172977 96824375 247196139 500723572 915728964 445633152 417196603 186614232 967859227 228715947 532796003 320424070 112197461 839244972 658635014 73219606 212796461 478286962 779107384 192046925 726974085 346952040 767210619 251568794 881112751 602787783 792584999 543722401 296704300 613574073 39442851 892647981 362807261 715567181 585157603 426993477 860192858 934486643 975539864 642223459 563318592 956696374 594294028 152607175 102426280 936175357 67823262 738746694 429445118 643288385 930760809 654767726 900916406 348285162 307226055 501947141 104670590 364579311 450576536 728113550 941735075 724909338 668884077 24646619 879299052 336106266 165457053 749230989 980010347 707617281 746103209 925234797 804352930 736137150 591277450 842337882 658756684 269230773 564858890 890055483 343105966 808152200 122054223 669723512 986352451 505048321 400786173 558446978 217942015 764365345 81013409 779531971 677660225 874961112 408832287 520711517 366404654 738618168 603072785 744468643 394479315 679389642 599122919 131414406 124939979 551907368 184306835 390720237 459562598 397613121 812344880 671008943 733924644 405293742 574121220 121175355 526155412 899575183 195016409 873105737 48143245 394100105 711389622 224028904 466969052 454453206 369522103 380231651 813547763 885129809 719748199 176888814 316291647 668132737 785426068 479722018 742875507 485571638 502757775 368555403 539104827 658584294 501297675 61699271 477776729 627667905 829783933 558090337 177488383 57729134 271798062 831130326 257353248 632635491 159616628 2217441 759210088 17273505 669760839 867127525 965863432 219184704 460295337 644886621 47357243 83634478 995432941 916280776 851705343 245126256 815225169 537975223 911886610 606300088 610283743 74203191 862113424 535707520 503988966 25993901 469604303 899259747 940906014 168206082 703998415 677401423 193421846 730867842 606360953 976172535 748295989 798034927 596326901 61515342 237910171 763525638 591924542 762697704 274928326 370736806 93507135 585742962 416053165 823324447 261797085 13245387 439772284 803428625 923934371 868819317 205925298 431220070 924435021 15013312 518838656 595857018 126649753 284004331 34909851 281070018 478349331 238293327 226870798 622494814 871808702 881609776 360224830 753496175 655974040 683098459 662999991 443399431 630745282 693879412 220745226 27183122 585502500 206880210 532424949 669348720 880258772 327042956 998032619 855003214 458809253 246551212 230349533 174347937 263770270 426385855 905648191 770995970 758813824 41358811 126093710 479061577 676345057 959362898 494433 231782157 321753084 705658803 949297087 800588386 199889017 296792830 568087155 174251953 617113065 412897536 195928977 235242170 43112759 357238654 510240913 507425792 580758003 954111756 483517350 356272578 404898676 948341142 618252446 901182112 963823627 327213012 622373562 407742817 656657909 666447891 914403 56609873 761744635 168337516 157847441 284308917 133996173 945666319 613653651 758312873 62975516 902408196 336658281 874228178 980628344 460489050 225956312 227833628 629775121 65712800 665853086 809471702 453740920 279394848 593719690 395619661 204217658 650239843 773646261 695430932 596048624 2327641 469842853 820232023 275364894 167908902 389880029 589908003 551317705 321736112 487622001 917035666 866615684 703575505 867509886 127177556 90555550 28710071 132119060 235114785 784449234 288135565 535079275 719438861 411588714 894644309 278686948 419985396 250325464 171668293 526426255 262304064 775353164 821784717 772114971 836675233 696494599 449357581 868431612 845811784 735061160 644792545 102138391 663785942 980919054 164867133 223778189 635620068 714125363 701489288 658379726 676502955 510752294 801503258 169760635 488083971 151528380 610155523 468760674 170389995 779602933 913622904 792571186 848769169 960628338 541162352 717249846 480211876 489976723 182504887 327455250 661874244 262070323 720046818 152009827 151776750 975817831 315886149 695008834 784098046 178659895 293171947 801217567 981285371 433749849 975819216 975079831 301280827 310761889 122943967 478453592 395513885 358032904 358543484 610967431 375986640 715114688 464380632 263268849 975800279 307270573 705941816 266906689 910395154 87881079 134932709 675089442 875345550 414372628 442086039 198001716 544809181 556436648 585094814 223720937 735885019 831278129 948232751 122037073 375866526 826560087 829593841 915592765 405260926 668127585 677288204 485044434 184822083 531525644 516395482 403633136 721775654 142739455 811003945 115095958 827901785 28674222 537252871 634531266 517354713 204981784 417726252 664180624 922145972 201599812 632618676 676945195 725466780 618522205 592955152 846712804 610058000 83114388 796237414 653110828 412084091 989454630 622922738 138336448 584673464 86130328 313584864 986319330 837249642 233406163 254673519 434407309 873087871 681665924 840134341 868145742 698725961 214670420 306758474 433651405 99999950 734751652 369552694 128991951 147490280 694186137 914645173 387679081 172037677 741709627 533724512 669259152 429272393 699262484 893994737 650606567 476587633 973399515 593166322 146659713 220132446 220904264 209395520 105339668 466224217 901953056 370914877 12390066 107198606 291811672 358696617 399728712 116058334 83487960 688138337 275836727 298284421 162601811 25559348 666301484 702724564 160259694 453783123 672539548 623271562 34324305 201835695 387120453 849611576 95245133 233617935 617849730 840809258 557523440 217518788 960591368 659603298 374944604 516638754 233555365 836033223 817572019 399092604 78816114 445318783 26127582 284728279 718702900 715995910 723633062 141761738 683148946 713430203 377915919 581875208 324941949 13316719 586441236 705934085 414423352 789657094 240064415 744619616 590518322 538018019 322459269 41107316 275515470 993908638 456973330 119877880 811501211 801221143 655795207 978510305 495321370 557632729 906979865 686393596 262902339 564342657 593736675 404936774 270506551 776007217 973679616 499763079 898101619 975302103 145692317 810451147 697180759 447949594 471431740 896149673 177903582 349044096 206132194 754796659 428358279 119195172 352154236 227551404 549191232 901687394 328400221 930714747 555847276 272526069 878537652 917709325 987961793 857330006 750173675 737495949 915673975 854237570 802541514 167907501 713946993 65706468 544257590 378357036 596588875 22934041 369510270 306356945 989045997 692825163 377601399 324636165 899353185 106617044 529277299 563361492 693818329 889381981 847299769 659420601 933029833 420924997 745328958 145949908 773606240 90245612 69259259 324409051 913262272 765889468 136510436 693643386 529878504 670798386 886294469 87107758 830126991 18250022 875335560 116482101 133869941 119474752 769401870 901945067 310928935 650855026 353246371 412213628 485268630 100937725 46036680 407262716 278626225 539406076 287917537 303726989 127925440 942116363 445068041 722336440 143144384 702330586 584656734 538766989 740258519 916886980 57146350 591957632 331949263 326527473 151397440 886001072 320394193 22224617 147206951 331622401 560238377 246352790 401637445 754078951 805937169 832878380 167657964 852935230 710253978 128352254 361182196 508080902 987104534 329616333 686010884 308240114 207808744 404862120 962336243 713955174 468699538 649562203 878297685 231101286 178322868 804202714 800508427 992792031 499375057 205930932 578290550 310599589 660610991 482105873 267053034 656099042 229208337 267277657 311438585 545718763 665133695 725556945 524296215 642029810 983307396 86821102 594871916 552425311 449476700 447316881 392141930 368839009 814950350 89122529 751539287 664116460 964254029 675542387 344354890 636110045 405787226 621601360 163533756 785288283 396322222 411523241 869529284 127918174 545123448 57893920 588662084 800357121 61396216 836041246 543399834 4543137 170121742 176752907 459068350 299391528 315097373 799598460 968674408 782284929 808831492 224741655 818204601 49133271 624041891 835705359 919989667 624558885 187832478 753754924 534070819 675534697 59613685 975048493 116686458 177142970 757175600 750435410 373893507 316397559 752065062 41367429 992087732 534456076 9115437 305257608 586965763 784229463 653907379 362049714 820363003 585527401 898302651 767228512 224539121 248413333 434111978 278387449 680995584 184554552 777873585 733828296 226398218 882226190 282701265 55122664 68020138 775292689 145856746 594799471 799399748 834438681 626607329 716620550 276266410 65510884 834470913 499514908 977919914 672769482 514582201 582939690 132900092 265645500 344780551 793311110 328626174 261107899 337738374 867924940 991974518 474283474 955783560 842734048 219607785 409513839 960624574 817827735 776887951 709627349 625912544 728081397 484037601 248002661 518081756 771199248 756033314 788335302 879050694 980292495 20959866 891401335 88941669 228393145 717836984 920993236 757961794 968154404 639202473 782222046 502305616 886312057 400483492 521759570 658553855 958623576 27640123 66793845 421918330 654603675 274893292 583047906 849417111 834731785 313455091 784841143 834912905 764261199 505816052 914548356 174284163 931645439 97693494 28584792 55653437 216628939 443435921 889190041 353230487 266832561 343284075 34720692 81546965 13768228 695516020 955256025 315955132 919988134 16342914 713501961 256805918 642627825 71287782 578352433 281673425 414721667 962316783 742587432 131001889 297178494 657669975 490982738 40040600 388804704 852414556 914193305 288076100 945328947 891775581 502463429 778142275 409211422 251601346 416279573 708809315 552070658 985492575 316467360 1232581 4730413 511105969 31660642 390232557 210517360 579404505 976051342 19771639 195991380 628464416 664319526 827641302 718253290 717572663 788525489 579286639 922830053 388666696 282399714 678782701 650379793 30634354 516797296 972294797 38491073 864188579 202735628 846510162 516569320 700501663 572370215 326709922 998705945 415063194 262368555 414561561 594368707 66934944 49901774 471925944 195224775 260475190 382525652 123773617 684534793 617427023 938619222 26748904 85274945 566201607 971605526 723825513 768587464 657702434 924120925 292315787 222652884 483949101 832393970 534787526 777591987 267204375 915221945 2909729 572702775 334496609 182546895 556477499 16925051 535541743 934661930 127583562 506238670 44040657 321091492 14161694 237222333 718671722 682206196 918593432 446628328 137149164 981972165 706279088 314259782 667235988 549083366 919957214 602929657 854399903 821536310 792564521 699992445 221687103 818277954 512631307 767930476 223633096 649101087 817103965 601798640 629235838 824257496 692396170 338130880 334716412 197582364 547102196 235084413 2909385 182003952 286495123 578722520 534469783 256412072 280040796 731373071 3569506 346634551 952074505 762054836 100531196 226285507 92454982 697481373 394700412 954369826 414453010 389954560 31559473 415770953 638397692 4095983 487874672 392203267 86456927 980269515 424625890 165226163 276846445 768322568 932628785 876602775 234410705 933249122 834141275 657120307 323444865 895881960 480251616 95564889 200156527 496709192 421625459 744387997 232770446 825483287 793607040 940765813 767708120 107440459 698916488 959508440 132431648 654238691 473699382 114846715 362695780 381281017 635257430 825917120 195818166 636120635 875213940 922211111 622821960 334517523 323366595 839750240 433726433 147495463 293735406 87933 239760567 700701014 565404331 263744535 291916848 477796223 257263902 686694206 348994685 818291337 71628964 899836008 334505703 872779348 568818328 810090160 389125470 420463030 246539090 464375729 175070412 251947746 496720445 729307363 49618230 470848693 84355651 671361056 96600756 522856121 269047350 101511448 745490767 877276619 321864659 798101051 328351474 220034366 478166797 890521298 831666875 151275953 759885241 381715885 380885316 176068575 205275687 804482902 109119594 951395382 951423728 246348019 948461911 137979115 541333284 197635841 217837840 165082323 676746422 951644428 755396299 130157566 655764288 292471259 766157568 527751329 653216448 873263126 688606673 408469483 944002836 533332269 637015345 630124350 84591766 657238696 656227606 808883902 309979010 258595282 626392912 468482564 792936445 286047749 766451969 327503963 915823775 69030762 232843440 639215364 180265691 261808644 820341865 120564508 317392859 765932540 907922796 472399645 282354890 664940590 969426523 464879073 751760844 271507147 664220758 290611851 318843775 910790455 35906855 906830393 58236188 334181416 584513510 986801250 63555006 847956739 792352013 516615706 203856718 786321995 719860058 327571074 963184104 345719301 569131526 489288333 713762831 228079664 197276162 68286236 834289966 992221574 798006434 659751073 155051125 742388027 392115925 341998483 820224538 575413634 977320511 2672063 225957370 43384923 346009040 207122173 909040164 855304074 209675371 854375309 549885142 738980347 246147528 4772856 853734279 567025379 313817150 604584266 135888521 45745177 275593258 635745066 175267408 422191836 929428941 339610715 71436640 939320179 317676738 786481726 668944216 358567420 87182256 698414111 653073337 992495608 897552447 616091251 288442557 370498826 76592654 268406518 803550409 465169677 191174977 835254707 943163267 483766715 443488359 668322073 634654212 100405895 309457389 935067135 894610233 340159401 886446248 619302328 830222695 326026813 722858846 259511390 406279547 820889082 832979037 430366025 762264303 168582435 818800817 138138672 122462177 792810828 67082237 734303345 714568044 887292573 697849456 273032942 153240429 733591926 793198514 173717971 344260197 611625410 963414071 690077538 33032672 705440377 758149264 304770506 298174872 857054337 509996069 19429994 365397275 170989131 303576716 19225884 80584133 502669761 550322434 767782621 524652297 993971596 260437819 627338715 347044124 358355114 785466403 927907361 147906176 762571878 848511411 965867911 721145719 983145288 590986547 256273512 755378329 514026064 322567193 560487615 872859900 453717722 185574031 548898143 961094027 60059257 638340019 596244086 866013712 23911475 728757113 507378991 652147602 526305235 785676060 189114169 293872592 16289283 460072644 801109424 875573880 691220815 985643126 183670316 482918485 457491259 86159582 894929580 629520295 249819856 755284610 840985370 997915281 811990305 509597117 403357911 413754589 697579055 61597471 968425131 782290982 436484931 185127151 154875591 806614190 44545098 829964749 485745091 156138826 708729742 462058287 115382244 307700729 76976644 316383207 371829207 422490001 908622669 316448682 981248287 397322637 576525270 244933289 659597576 909609168 644717470 979250860 610785013 84122924 668460538 533450989 42060184 708820196 818770516 706934048 463999791 612189080 9989676 205652154 657973234 431779547 540914726 112846181 718513703 813961181 144996212 358450836 20496191 308836419 925894434 986116238 976632834 518274208 676568374 966980924 291914795 627513818 248261410 591845764 901940140 447529821 46782616 91892129 298411577 873182668 669835199 567971302 786328873 755686836 750965227 227821050 659281834 369575772 537336368 813338054 782393641 729892450 712470421 316483365 279162813 789350565 129271962 359795789 389295838 381059611 26322205 511910938 956609612 858595202 756607847 245574524 532972788 870009217 271405548 552757722 910815005 631974662 915364751 969254395 938903409 141829366 332691051 4456219 109451875 213823449 394290079 311153710 165105396 89802135 26905276 409840730 527653226 429815786 120925979 712425656 593104935 539297755 605836525 411010044 919200722 666861225 26051188 909307371 133755525 123512477 864355156 109679503 917948110 531749223 971579562 56125350 898913065 480674696 972122123 219867982 683579542 647998161 167144918 956256972 221496688 24972089 727107349 910972831 284541353 746360011 804052679 735412855 234055430 157100360 893549986 73304289 964279676 799500712 354621267 822299253 881492220 575194626 868004366 421443944 35540891 430907587 664426070 693070690 283451732 8026306 432921582 489658305 446024274 917395352 525487584 173693192 23958295 819555414 306334140 254959614 1980858 96613873 851236203 793132347 249591357 866563289 383862619 971956957 131875477 428845343 741989809 489977963 719077499 493879671 620225658 796491528 108253284 99114735 903878933 352952311 464143828 297605567 613898594 932457852 338586976 468412380 391424233 654606814 931349984 1182998 881667131 234774244 907699742 658218915 407879658 671793253 111158499 561571449 904988021 571720918 149105220 635977404 73660405 678055998 148989700 797224592 636394009 757898911 616525966 342335295 75304413 432588731 207751987 344004035 293371878 507824920 466193123 154718967 740811525 289320190 951604257 542478262 444952526 510107777 318387496 902117063 278270499 178010870 856492048 666402982 333227366 570718453 351439454 767032965 451562245 681104053 389979784 496724852 607784951 86176367 295686296 616933673 631066950 297549838 326333199 18969282 144827872 820894957 428935088 796757072 537122723 139734216 926861395 297559675 372325932 785866636 472771324 418289728 413342160 286044216 549267001 86253250 583380199 68516048 125623110 783856063 606334086 344714691 317482493 648562840 667017569 895349965 490864834 955347932 938773426 289688907 385253940 226819340 27749641 314589544 507834794 352209646 634168700 520547302 441293907 885142545 374342765 28088349 719429019 635198812 225329684 303084182 569515504 822549573 152888270 492106471 677400890 443573755 13033501 602310044 641873622 542698495 150732112 394441796 150857630 786559452 503085908 190299415 59738293 422113285 193717026 778260872 973865750 119873662 627209552 455938913 608624030 259185148 195242865 741505177 123028513 117318718 784428060 743959925 569613514 938898475 359000485 95823195 522014703 786662394 106926922 682448852 420880365 231051674 268864357 984795690 848617149 667343605 72088837 430117404 844203590 640122727 550030045 205574125 307657155 461604158 399297002 908171252 142080867 283732401 260839048 69271648 392265437 253005087 453411008 320771852 14165535 310989788 233253997 626444052 813138890 743749321 345882498 684236280 495345494 372077511 937890443 947962137 957429673 640839777 335389899 52927314 774237473 280017968 514525561 165707969 243881707 464318235 600698775 638695761 220416733 356241342 322673365 964937967 738077078 232428749 420558007 907116473 736417777 632556620 981793626 673481970 19759889 95002840 919682761 665278275 905307877 130552149 277503223 251663297 524386220 768833811 100896173 518105791 303495871 426836636 189319652 407577425 93529602 6210974 907543684 703754702 228621314 308414633 360768590 880848972 266324479 799473004 514955479 607433507 147214591 265063114 729220672 502809017 265680615 364816489 277116226 419005064 173919143 808043151 840056730 94919713 451455527 105393079 582415609 694048915 797230410 128815331 924275607 658792103 305367407 228389793 385704205 617283509 748983495 19451319 373507288 453417519 991799635 991600320 721926926 417385601 715880527 577034455 410593359 909852348 18197056 342199291 546075721 303885528 79493742 494760588 452778322 546375752 746438886 315132672 753792502 910696700 526299422 691043002 757656707 834618457 872433986 470087154 187360457 158940470 517328315 137413106 32680688 99407640 566242277 681527808 48692007 432968716 749197006 852483974 698065856 138698607 466189598 580852865 864775086 628360709 159973027 911516086 403500734 114321234 195905687 879312455 307993114 502471087 848627913 31890753 35847599 794663311 179610356 654751299 286662820 662947738 818157875 608122492 202400754 145544234 121779239 673981957 506869234 655541708 164590204 720435425 898422047 998039466 31467787 886999200 132693441 270782530 81986002 95571059 49266617 944185696 852135891 614410223 415241561 39728818 404706028 184665606 808696100 376239667 18389681 970735776 710429123 493172550 125760701 787948725 89583608 381083946 647058070 63721791 338938316 698239675 157343094 68265379 971714529 336614524 62159045 451573835 728097157 329276089 570306851 201367316 463255347 129166620 823404154 952445791 995760301 96936380 440859964 29549281 90608227 283085427 32400272 630943389 86969930 659438103 832145470 896325786 339523878 314814972 109112860 28911825 43025085 750676742 514242697 198930971 305034155 47995369 250697910 201158312 44555829 82758020 170658553 966979232 81092261 340530317 180545620 963933254 173844091 954064275 316310621 678627812 124113712 795517690 390981562 481856214 977671036 170154927 783678849 103096179 204166179 233271776 295218055 924214596 520271217 912972191 982022430 88290948 699306107 700192884 568387451 414201191 472088504 902141737 160543549 822637941 990904365 438377478 20185294 811106387 626736231 632641242 520577159 731464896 586808112 960380359 686819070 348193957 985848445 142373796 495156917 845277312 417122358 686733874 161171909 467977670 359987294 448978933 171859110 112508942 377018764 745015951 240841600 227440869 836516414 691723204 235099000 792319994 423127480 115505438 101684431 937610824 598616851 292641747 869241454 564470872 657010040 514775966 964261670 745868107 124343176 42023516 561339295 444850928 625799255 210702132 17131494 990924861 399653361 912624876 632115597 964017947 632696872 76060127 407140483 719118160 125633384 204175838 225864269 666278612 31030285 355922265 335809482 620253673 589360594 997875793 573271729 94565715 409331625 61729188 315147575 134500863 278930812 699447232 223203352 518753642 132836511 259295176 119655228 611783688 778791777 249105661 761572735 998719798 502804728 758344159 955430984 610743446 79353600 640455505 203282156 586278830 844350836 950150962 171835122 843401401 930473916 276112010 688009295 733836567 497010635 652006103 381587293 860722312 617742047 579397968 432516100 200860660 852779547 971066110 421082390 599491691 106816944 759811061 299728966 334090101 702992516 180662890 703389773 143510646 438007257 659253067 57525977 726662185 185527054 385912453 874574832 665077631 699688144 976487670 440626698 89682800 842525848 919354181 665829934 863788788 322920716 593121890 788955633 703512740 579609880 774110869 174536570 568189924 878814933 972364166 540459272 560257788 463096514 979168780 378762450 762045455 421608526 360998591 468248734 100481412 331115590 944876465 71859829 689740641 724290879 354662870 923256808 347122102 384592951 364074135 797112020 439996737 701393809 145453261 751766371 763932130 706829588 66076487 126865678 854676420 144187593 311489317 945830538 250488371 670445436 36204791 316896598 453271874 503147792 703437454 481678021 707029431 165373747 651165248 241186071 786146442 566063008 77856560 655560938 653914757 870899297 537185934 377577076 798736545 385455659 352063707 879664052 269760669 914886693 839065585 140895361 449537010 912982689 450339853 648556343 973512159 820561829 469641838 428695507 743021220 344302922 220191892 375141256 371258294 675791782 529739453 22974189 655341869 837542475 664325887 665787595 522753325 248707427 707028833 308475839 426155721 674878340 432875178 124876273 81478405 865356593 840328489 844041736 429992826 46436472 991992443 109216271 199431814 11138490 124208025 817768072 71507539 771006553 408618877 293331559 751770726 41878925 543529407 784055762 875922081 621126574 628192293 641795357 933359585 341372783 480448191 50803882 969020867 112063996 561960644 971456721 8329398 290749954 69810971 520143582 775659950 274758879 314458483 856561866 710919649 813159425 968812454 931924277 715251354 133149115 892234017 569412099 898250208 807948920 345903553 480794424 438893873 152904867 83370345 646175838 866291707 629298443 320705898 149955339 901799139 155439499 769251162 625490193 412630508 198637284 914997360 90499957 429210577 290576996 443911123 522350230 961644362 337306554 147049157 696436945 893848191 745742762 398762335 311375064 914817065 301224412 20775006 403301048 80593915 864864539 557970499 720854195 952610468 682500146 836122166 530826770 88737954 543759119 630094314 540732408 778641288 636057913 486733791 958609371 698090538 604288348 804821064 910913890 781390864 209618694 6293904 634835833 46696802 263458559 143785075 47237593 61426923 245827824 97804141 199301313 870956880 105552279 405232241 770513594 33649184 409541698 856527579 546162099 977124364 840708926 98114323 253466040 156514341 248807023 940663308 187118549 557006191 988631956 517769092 271759304 397459807 948092554 129886387 868104375 595647932 585993747 655389013 604949473 493809216 629725201 191940187 962997101 798748247 954678915 802124863 980700310 714072942 451570894 227346323 361584585 412147901 544728363 23863764 700007517 833006761 995556709 328901833 996864786 162510438 786460713 382918431 393819692 125500132 118705965 968194428 598418779 343024226 302858038 412555660 682373496 701609205 346014590 747250808 385738106 558832826 31612229 101955955 455723777 9361941 881271344 102475039 85584885 888653567 53299928 897488211 294090398 225539374 496551307 479830976 356878180 367599614 726971914 925686651 979986210 610924229 101738788 859685612 285784249 664946232 373623761 601993800 771142432 369878726 622468982 140903200 202750738 968303014 750190704 311286335 840466312 122039506 39273241 507849519 33737638 694089950 951301828 209455785 904734820 696090065 395517651 197267620 457324451 868795366 10232215 277141969 45611902 722219402 493301021 983010966 324352777 774578230 572160938 999832419 692057447 881783328 162304421 265030399 623550725 771676051 377743441 228973539 824424938 789674079 589793841 981591064 989975860 200434898 566943706 598823151 179098742 728179004 880977453 360523732 748714615 746235886 974715897 385042540 225973382 686017341 664292199 326947263 154002988 926788380 69944383 901683341 39427095 907424290 990840922 301759011 613841459 229244677 183806042 387601247 128245565 412496831 59259688 788298393 389261002 672698636 289907137 513525167 182760076 232877645 465040683 502328520 836910295 570028731 803659061 648116432 146373163 831146024 784718759 839207983 172053439 969071901 697853070 909454367 880627196 716530781 608288893 523130184 283578032 587895201 862704346 697730662 313581076 610015607 445946592 49204519 601412013 668655870 114185280 403228966 625640534 706590711 402289719 399561459 281695706 18108060 483489269 542102988 11382915 846214418 303830746 405047195 843223884 524746741 388986254 170331287 663169933 428078392 174877927 246240559 297170793 639292088 122160691 819706615 206806732 712204460 761078284 192904825 454181891 781964310 87445351 163483799 707090919 167506934 259623447 826766663 382264720 602998182 265989963 329389875 961228672 467311353 129581124 770800846 331378476 722861404 524742000 689577855 488754981 320852974 547353932 74142534 16549799 997536247 949487117 864827248 304384175 171592282 352049241 389240282 64274030 542772080 720409889 186366798 364955950 897103911 305102297 705784932 549891765 870665244 803116527 282582390 244136751 965819162 115286271 388496435 253746489 538021516 346627486 111269902 107172456 990079731 429298049 35116476 242373148 380113413 269981219 973802393 281874541 841980442 48639110 585158107 255558781 509862959 627144211 279430206 187370686 175731757 745462095 579549277 380784705 347624515 476123349 432568251 564173279 219503726 795994700 48113341 343806721 560173981 281817737 323175349 921299801 855113998 714691674 51936744 259039317 856630888 708178945 723488235 410880764 236424086 409841972 49005148 568686605 316493904 730178583 953151457 872268081 704060956 401947297 817419444 603877856 342610318 18946562 325608934 272748258 973491110 704039055 35762608 366637780 189728232 966377233 134876696 521120616 208700913 293938424 529051178 23455003 831231930 649411 986500027 955474896 759217017 218622834 351856150 485489229 384227271 298566720 21038189 293000601 347772443 522421116 547905707 586028784 260846567 860733304 776151056 391410204 47882650 808251826 710736536 9954522 28989818 944611006 766058834 706598900 405591524 218854796 280380188 595686795 185223534 355466870 586949184 446186439 549193081 870534097 533307323 127547399 296142567 46748906 388612271 607788419 872111587 426169568 57160885 691392567 596508265 124772189 133051741 628896722 715871557 889566864 686630240 382924533 910039820 267788426 136819389 723967322 799469282 411639022 967223146 534713567 85416889 956013163 81826550 73440218 17600477 838790439 770199018 475473705 76130775 493300428 715669182 822850218 869418828 961961666 404148333 301992371 789973941 931842227 173252122 187852625 460565294 705162959 124075806 110832022 880316536 707824069 29830365 139617497 922983382 324023804 28937328 758623733 140663441 365082985 474009212 118578405 721118985 873174848 842338630 320384541 727766507 789085917 273550298 55555429 450334723 486929175 563188728 571197424 325382862 308294283 999438225 890728326 667858658 806230965 178427621 343016839 542086114 228504717 820808828 832744854 387772209 919212410 115973107 219625858 363186248 690721641 838541663 127813837 682380131 945551190 687799327 83234652 339052858 352576264 161648893 442351478 88025696 134008128 406288066 145658241 640762201 473981638 688197878 130884372 656578241 671068801 345564954 225746143 423532762 438155408 918990740 900785996 930419791 277960330 120185402 464733661 473671143 94018815 926934874 240021192 828586181 327276339 777685039 99498897 180892482 392942172 911783591 181156123 271808928 37208761 444189696 247288417 522280523 381307397 398525437 17773448 403226237 993929856 879355849 885093211 631797876 134635131 54420472 602696537 39654704 975907073 334296781 608919710 374332286 175672190 957042019 602143103 180775456 719071942 637174029 591765652 843866384 26170864 824095286 209194316 457493229 889713123 964716979 344925288 702140528 637476539 105374714 868085226 500290055 43023313 948877576 661655538 869287530 476616945 333074322 358392714 298272028 796194060 334984351 290452617 109837457 337809600 243030128 548850060 666477531 103503806 588986025 235068376 764259204 285951901 309061503 480189752 781995570 932919640 428537487 765599520 197401646 447392050 733022475 750883655 941088458 257373833 437317 837134174 532176117 17513223 254309317 550598492 127407473 98276263 80210108 313541778 672183477 552928184 439391937 514873696 839838914 978174969 881198862 536142108 928072947 463747785 825113942 190953788 734532758 302714835 116405985 352362418 34447154 488621391 133528932 44561756 924760510 660629806 176553481 37245577 41247252 914698235 443857699 994624246 784790107 373795320 26937050 502164443 638459542 914930195 422508697 617773733 844911878 683149952 369058153 911845353 230966890 302364264 816676251 788060574 616468660 975935808 965672117 639590404 607996446 183873039 140155602 450113698 933403777 797686306 67589670 10372596 84024211 53079140 277124377 334152864 763684854 322428504 364511248 32744153 367100688 443706633 961437903 418603755 497418053 471416494 843024677 951319059 269813925 315219051 460310549 362467375 108181069 158075495 108977629 508415832 49392707 674107454 847101012 744146554 398783241 972049484 747665188 33154881 769019881 809472808 729836096 8096469 943593775 229419658 619691088 4606947 297210493 773543947 452027592 599997943 674248381 569674776 722396409 205696191 828415558 571480276 912457067 219846497 296557380 658165347 192396981 712523544 994679822 666365769 261105968 425823313 762470077 40649983 12622718 711680812 991829266 772413849 632898249 503622087 215503986 4644502 518974362 459669511 655910072 529687939 185404357 170925827 81747606 111632365 791704814 63459961 402116574 386718363 786427546 782913399 93029421 699871233 443668954 351666487 383539398 123907218 773141782 803298670 400191980 404225027 646159544 543231119 426106630 863295465 466534680 332374676 829034487 295737383 839649145 396400578 866287702 387589246 645082007 187411592 908718347 433451791 456148429 318142396 26647154 774006780 422790294 254402629 181704978 593257662 186380171 973335572 503834804 177037780 858319546 316287949 770133714 141943181 346763605 348318743 397059162 400026791 186054380 591670301 39580545 563302791 875030141 209176850 677306919 304320801 898559326 759649445 684478144 112041776 6262535 861639503 484561543 985929802 935302313 552896410 736655788 853840671 107921778 180658965 504717882 318535346 448880928 544111372 634567476 998330851 896475368 582868016 371960260 417987012 317994163 587140035 449608723 657098247 117245807 174809480 964266790 741748091 578958740 730970301 523945259 576643910 592250307 247831019 282480310 497489142 349597849 269043387 461747473 430144720 512705205 154301177 933672854 540931545 876373758 526274693 421178299 649785814 193588194 534539271 971360430 164954418 304645964 259625730 748458868 316051040 535155948 696307509 184130792 963328195 288662174 985354513 422649329 302091918 177534638 889975557 673057795 440573631 713047979 407546550 410025925 275820682 860324595 884135703 184225472 150863517 507661207 157367922 268839957 768852969 23756853 934560665 971144390 493429039 742455888 740723446 9392103 789958686 216975979 157385265 547297283 483694961 761537093 609918867 279174302 197915694 80469571 806421335 832036549 600945435 934183798 653544828 423610896 460970500 776992985 915168958 283252523 942217049 349218649 692734882 709456520 764420638 970937851 757910633 358401818 640145249 246358846 159708261 606222595 914394192 117839660 760095029 587467363 807447919 242851239 368698538 30348710 909611589 907678525 888173631 914854440 626676898 483931547 688422365 383959152 927449886 193110284 201388482 29153105 597733659 171669807 387556544 291538012 743681298 965943647 944232280 740539531 848056225 693835425 861341824 923902979 928165504 61895204 452290763 763552622 608157294 67722416 177173823 833683852 737303845 316113673 48479209 546683854 886777378 875836979 886485303 159990251 778222782 867199630 772972268 259231634 392533881 975405070 753989616 583164829 436831125 302412317 333804548 398361940 873611608 497276798 758404418 532832342 67137747 80080433 732334660 772554255 221405059 552452531 321604869 331710405 757611670 611887526 683351865 340392043 425267577 248131357 932718267 997390868 160378351 735569139 507982883 540448049 817607876 868711811 143644335 970218247 4101490 64612970 497849948 308307143 255183075 958886428 822197449 147154645 280638829 649172777 932674910 830739928 967320511 35150904 841300334 784319950 475079047 584209802 618331814 972313090 363308110 113594207 945722292 542111894 89456126 650506604 699224330 287185057 439245524 300029994 128208899 592705602 950186377 150542604 84720899 105905561 35578323 531737093 822846246 697409398 443339776 556764529 7325433 123417568 745668170 473516062 192308351 818615487 539461910 500762962 198946406 663391764 827330479 504337496 862088688 626635977 616577935 846834801 624536961 209080020 385560168 477976626 686963421 955953973 308526379 929945690 978107635 55207838 57326956 510401897 650099193 629482856 937364987 657096634 41244874 396023214 438910212 521764312 841648798 428212705 320601474 573852860 563578586 822984375 292810816 6944667 65739308 745218456 328397304 496352953 317366511 238816331 337721803 7769300 752225199 974530944 361931571 666195503 55243122 672547284 814318855 100960185 676304422 911973095 203036877 306182071 9236433 234652361 556911440 859665568 953419874 492913795 336979469 865372943 980744817 229687260 75227191 649629792 55504845 880454435 4400423 303433819 391291183 676625707 284817114 223965348 296786802 932317887 371643486 165886863 946258005 259997950 892413824 556951788 103318258 904263466 7877631 802306589 391375751 710043402 56770627 27005026 472683591 117079030 574162746 898101206 856493537 843589128 468818555 750755638 667848862 98243131 14219225 575033387 98889780 466816569 123205590 411033050 976024186 17017495 908476460 201480458 291771791 213589941 127379086 917981523 31654752 454256531 140777705 732185060 287911373 108665271 89368127 864926975 905014970 894299273 486439869 385357776 156750979 469241904 418763201 753912949 347665603 5272669 862808751 589079582 836494212 795499033 436959818 298266793 115671301 63464242 254628972 974473036 375970941 138323572 578700751 900616268 24739105 222613393 235633286 422622431 629637979 348601101 172426382 718260091 592535649 289479594 636592735 33321433 223778733 961870810 73231885 940855049 761292560 613157061 451114602 767992625 752277498 558846781 376220911 83494084 147146295 709502127 287958441 491839301 222899955 973538873 251227141 846806323 491767761 758453050 826884917 663766589 228004489 137653721 804517303 951103894 863786908 777312117 129528564 678057668 595234780 962377622 551077017 717048814 368675420 261085631 329705334 297516487 848989818 529522018 893334901 525286986 69268200 371600694 670636047 880212170 495519970 679226954 611319049 683299800 523335383 942328916 371913880 933871921 941585046 887888468 930872649 699668891 623406073 55668448 595644473 790756382 739066028 484421337 789638791 4000695 468533816 568280088 108212797 712377307 993324228 627896612 350733121 121775089 914684937 148761405 93522621 616523438 230076049 921046635 381285211 868281536 424276567 502112731 353886922 984062990 190058200 916116240 636846543 22389356 931309658 565347403 804218741 370825101 402757642 584722134 305269176 138608932 658476897 748228625 769930842 58882646 616482370 492677336 830194376 641734018 863112215 120808826 640714442 126250041 786497007 562255673 644234636 115453139 573779374 275579486 485669523 448151534 80207346 785974508 854422528 644200079 343054281 803963692 123048732 309679392 436516168 920113617 70369230 663880591 567005339 751945008 327801240 68082337 771785500 312404737 601909981 626628870 31079460 607310724 350675770 512408455 158216808 276146503 36529701 417981668 990509988 61197987 117509640 327516726 661863350 148525364 471262980 958305794 206098354 737534882 681131746 45779445 524647484 99741628 242801395 377469205 66998809 685925020 26296709 985063141 593567318 193671405 938414327 685336937 223770001 767207403 788817552 80756102 766708203 961797135 609842257 896277230 743445729 221182736 789448297 21369363 747878862 992919344 232713757 339314241 790465502 987053478 834608986 310058987 483931474 650154797 158285948 417816879 166766538 486928839 278718458 937946416 293639473 490072465 772375353 580403909 331666493 701593899 597935723 539349507 965856309 664499289 871186885 5876233 336996112 867232156 452662176 455138054 428191393 616876146 477154782 257596172 172568278 675944119 793366488 204847025 197435406 850678000 687166477 97346103 725637202 113221445 982984957 592822719 166171819 387006948 458084829 106299616 554509921 220563054 119949759 707956938 308806595 952211868 180399300 938260929 268805603 189405605 183573798 593957182 690230885 147493985 781723687 181971248 560686385 146404457 551548916 167199168 457920697 209527536 635056674 277765444 32148279 167650916 105112548 466606734 410950194 590234278 943770189 493954539 999199373 702493689 804173303 806297870 996965184 452728787 302890907 756954391 136618147 755576382 242593614 550202495 217959856 815013723 409347003 475007518 637242031 71846038 171868665 48871857 437823807 790773372 41209874 275865960 209401183 496923198 5779784 51745665 202164669 397146308 816595568 698414779 518631397 131774646 317912807 137134306 63733214 521185982 608589685 598157630 92510828 670033126 561486821 899351502 103436166 297487165 211253480 794514108 507743147 984496142 113271741 584070102 207951596 347630687 9278088 837970417 808786154 228552082 974321340 562369922 37457430 648823966 895762269 747822578 989389682 805679644 900760836 571968786 455829701 256067095 503640734 118960897 764025942 944080164 829712656 310060294 348885210 121532061 970027944 487133278 64889345 218472683 540334401 785884251 698834574 150460823 714248530 301316931 792391158 303521046 76414184 151369522 38693954 19209131 287104522 414416239 734084906 207904788 939903758 720585951 377871397 316107366 404814072 485881316 955245972 45032358 686457314 169872632 645667911 883760763 471966901 537178900 206393834 243001322 988597543 327412541 856430608 594702186 191025922 164257116 325699870 215248873 533035356 892588892 952362194 175687645 649473453 94150420 657343873 282514602 738381049 698588293 634868364 872855192 946611443 71391100 118458670 645250763 392291369 528649173 924262311 918119095 926900204 798660327 40580785 3411101 567472210 970895911 998024768 584110554 660673316 280611463 148008131 949697869 963320098 695755142 172606438 281531181 398975276 651002199 518736342 239619940 207012147 117273319 282496467 378514561 160820959 348073232 896752958 535757591 178546269 502294229 239920615 131656562 989912748 547207375 693941989 904492822 119124167 230445523 87374498 559930552 578640669 291965732 977097035 333344370 661534375 142481723 787305127 731437937 374936801 340043502 868473993 132618321 589768636 220368127 935222022 132890947 290171562 667756304 411378931 260205168 456513947 652465165 583779823 251050604 787005082 379874481 571854518 486138222 450415022 338738521 723177937 960921333 199177845 694300269 957748826 411745661 834699524 529381479 25058530 434374574 680993869 562416886 661892876 364246542 165423444 185549892 106575012 929040443 652322589 626907955 456087933 629197145 635361741 790251296 229665727 208273621 797488811 460213416 41736695 897175092 782468805 957991978 566661728 103023907 306773884 981816242 895934438 313124213 386845382 236677803 367742907 748989578 940072619 373048329 589983035 207034117 541105774 722744473 433839196 605756562 184858725 63646800 121018459 335740121 3847580 517750338 394717989 872062504 902119606 919218266 515264752 449824644 968355292 934775540 980341623 165829049 737495642 524625133 766202627 697739148 906060221 531184439 97558892 963683579 314958628 405107010 88393098 945609030 500549049 892041484 276189984 951268908 51986912 791912214 574914733 489703865 408024324 557081430 653112892 264695006 969013405 438917629 307061203 235784627 127840810 107374868 525452102 900968560 514437819 315990863 665285189 871729747 664307466 484507327 914198554 628738041 482839093 625121428 757528337 123764529 725102570 230833640 131378887 37178486 672051793 201430078 901428240 957583691 819756454 734178429 995843465 727341250 604333493 957289751 301228922 851715980 983271274 658703874 698800615 438418154 739282151 186231688 856581684 529873787 573521048 713941253 862509629 881196410 304361567 668226928 563081798 409152527 273139840 503925543 613029355 170992676 356887538 668177000 121198479 311808432 985112979 209758971 58399032 936062974 731345697 538776576 169994982 922986067 759230733 620709866 651956093 415875160 784811026 673880800 90066816 71362543 218691546 564150230 136964553 54365223 548854284 84002359 316520826 236793796 599163637 547803073 335937886 280488520 987423155 759857628 63106615 204139311 525128665 45250435 337906771 821006699 726417778 271740210 859357016 159680049 384410686 442622362 319932514 885234742 648094874 402250115 425096995 824275269 805227777 815593290 887104431 343077346 16400828 126585494 300673102 242421241 994464307 194938810 665669416 284646945 823075550 476569292 872319762 943056220 621312950 8698049 271606003 242428424 119383665 121465577 830275448 131614527 826895654 857871982 19979447 516830281 727142340 889722775 846727712 293536229 378143123 491567713 411501841 786148466 40844612 27307982 557578533 970629016 284274491 152505587 318927006 822433038 572124630 821453717 755959109 918571893 883327928 984229929 23732756 193246388 95419619 6561143 739453034 628243370 960749051 642579214 176436212 823403616 565205207 326858308 760890345 644475515 444909789 729213156 636248734 741738437 83486306 282175480 407546710 975192563 534505181 136421804 763797587 45290570 783586328 66685670 894355725 476278915 290865322 357017453 725907348 786161277 51781280 13277435 139753078 677572751 938146898 356245869 976756721 282702293 223549455 811627238 284463233 686180901 101851079 252256993 18337440 381549499 460141202 670234598 943170481 480590275 554620120 707333644 474492318 819165177 516427188 71764500 261708530 778562412 186161186 875406868 977508417 432417793 528103539 641331054 17685960 140544596 969683521 154080966 173835307 720881440 72103480 168399951 340175902 964959419 917613418 243063671 81909632 374953690 475847179 637320849 449304111 471825203 201265081 558084527 828586044 93660281 429821195 563553392 996782459 723893990 295949134 794233163 164207191 839575481 391501287 139309714 381187789 621805950 930574753 548387655 274098649 682740809 654278008 349407155 977385607 583351941 311764405 781379469 677690520 848477010 485599219 967010547 669530160 689578276 810294514 562709301 166915756 350890399 973084117 71253246 658407491 754722715 634830381 533940133 962659861 33902242 450823290 24632320 161269437 616180739 741684929 276628399 900473461 345669697 415985779 457043866 679220018 848843195 905609802 914999637 289144540 936753507 164809177 700181764 381661346 550919589 360899704 54292266 814022189 426206068 930443052 604010757 468409661 373313848 115311120 295647139 898221325 939755894 752581558 705189859 128455747 971208481 715105338 412089448 413987901 221681566 890828007 699870943 47243913 531669011 902284921 353163778 847481396 757959678 838402053 393719572 899185135 653745585 482641273 207519622 982428906 784437174 67649362 27983931 756860574 263029983 227793452 704542512 20804784 275055557 717805396 219554249 568175517 530435364 90943593 489423447 442071403 988322471 422426055 275908307 990283923 830278340 709913962 993242908 123858403 483159870 759467267 264704092 616809705 945544543 138235207 970536114 52447319 283507123 566795714 787675037 458253618 98102723 849086079 608332349 375156360 244855350 968426483 542982887 505072296 60026775 618035050 388455068 861856654 316582090 900815771 771422820 192444080 625357187 503536608 984723915 597326079 70386442 499639592 817242591 526571374 740858347 261250795 291256730 516340029 648796357 565351283 272670808 199477428 234588993 428137204 157032606 776412042 949664221 427803836 642602476 592245750 162224850 261467205 771817048 768561616 993169819 138411428 109215001 308496784 472139479 41609954 600471520 959934869 341005800 589947072 286335624 694888390 72459655 593711679 850164212 578240412 1938979 575202244 286895763 456471382 589393404 291647568 328644514 466480962 24776984 101126572 673635927 93535736 419276019 199422835 558311162 302033623 333791676 113081263 972833462 185226317 514836827 858153825 189235347 11298813 658387768 865121640 356067376 877017090 899716033 648640802 294001018 766259729 122622449 148386239 797909752 716260467 796949240 216054174 539269384 545357445 432207293 382511576 930041167 773418270 44713597 914586453 794699988 501168402 631054528 775272236 858267864 910011304 684512163 604740631 588037601 317070782 456108173 314423355 928366722 940131573 192847248 654896725 743481795 778047547 237201367 478266693 193941305 285295765 5054729 86591907 804697388 204914873 63734835 251407486 871397388 973386426 605949903 124396521 679608343 956397784 74971711 105494564 918619757 376678379 727820642 820240956 374515479 480685309 834444628 826504294 837767259 474909498 155874322 753659967 954412352 178667663 842427227 959607549 530272758 254163512 48458911 680395233 724455630 851308774 181994771 144053098 311676371 495854217 75390671 847828305 67296829 923456498 46854878 582979400 488222400 123862818 127907151 747065247 108000154 70498347 975271487 826902234 721473847 490514755 192641062 597285058 711574062 672730069 898577117 261351023 532994076 300564194 918374425 860740722 912858660 387744735 117154439 769908535 943606990 859804129 885781458 108073352 417801953 229742435 97620148 958467788 198311662 872052183 285080916 575229217 298440220 500797267 746141419 804024800 984991220 84505288 515165120 859077845 823574372 648975316 44522545 411341409 473678566 542891271 288997200 27258277 284272020 914200275 670092005 315076254 130557054 159995984 64907834 689532166 633875659 939471563 775039944 203021002 174946344 813274984 918685228 219561876 584548100 435469747 236093256 336664600 885834197 105093891 190195417 657124930 349738959 2997337 691433159 561782678 509546804 630568998 987453580 57552163 966358384 342278305 875106519 501065515 88017634 633537192 653004545 446879693 524546488 144842169 819440899 379200422 53749881 399642091 311343205 458980844 671595871 234983764 796268806 164131933 522873962 165553731 994948164 28062822 8540675 253844455 463954158 327004273 258169696 363720536 921826274 685836658 930222476 592380713 336142025 425816726 550988488 27580917 933340442 997016968 104585433 473251504 819117992 644933806 519753740 776446270 798383119 684974293 689934792 214144159 918952387 186835448 891648837 37068476 717245472 980001758 717684065 936181024 645841412 436861723 312156084 53118639 40277773 112882429 173606851 133082120 22096928 506924639 554902777 224628514 656747676 315666266 455775052 30916881 614708944 993357177 276919997 144176297 37079008 473652775 526336916 970077059 641817094 104629803 18556420 201111779 90719923 164907981 259316673 695845868 888762420 51735692 313089895 140868350 520274662 689194178 822536359 776931832 857796245 62825017 35783234 511328250 675109309 798022734 44812237 863678521 38777657 440908663 504183547 434427546 605101727 672815519 809384300 695650019 172593746 15801666 429247745 778213537 800626610 781411339 845140916 568861807 37894408 421849813 818685019 72368275 353714642 147527762 430349976 376640496 13138576 120199492 510843398 342742991 428597118 53648927 888222005 473290366 213397548 269455519 971808060 733822124 885530440 92183579 110057851 716359559 897024123 96174197 133724567 936774991 211837336 860980493 218765512 339381581 15794538 219559659 641017751 722773372 716747784 165051049 627118174 577870879 84727757 649212814 783882158 789190945 54005188 508987012 415651008 602405096 72332005 278446615 957555923 143339755 152918974 666410504 74923298 189834992 597383646 681496372 140059911 286386126 936856442 406625656 979759430 618964335 425246039 510964762 298078783 239706778 276329404 913681867 539786803 841970029 642636532 809681163 892884461 385685740 600563342 304114563 543676962 117538864 342402443 540221280 618432988 287891808 918429296 536350338 320492564 557622005 358423471 128071923 268351127 983384852 330459305 293394801 172306005 502946834 188673703 153327846 916837242 648796328 338835609 242567562 429942438 289701529 192320881 696312307 376645585 123592729 304760590 833744269 389553883 238807394 53085558 526593820 223793660 848064824 985887409 885477336 862597698 400501654 32009768 728775906 677619185 822005010 924481443 197192190 271941006 105186243 702464891 871261199 42742555 639645509 289346328 928724338 527682819 850095121 2501193 503924092 811123767 632863975 442233555 126850951 550301756 748525268 803504707 470321505 840806405 735283407 342923721 169923476 284978784 332043801 584616636 380298355 740550641 39789570 72780125 743869048 135774555 522957347 910545508 553347999 773947858 27508446 178999444 550305373 69450624 863267818 237235146 592102575 642818262 558029873 702714647 349584099 743555173 288711271 529441960 142439181 100462166 423380506 596398 914567068 53266130 41646871 541911705 794650625 277263504 467808852 621204618 815698079 141018604 110521073 417379024 801324633 746351838 670001845 46329316 335557517 419839239 952617599 413327064 612339371 732313378 772011398 409513188 747145950 31571106 320723235 29668886 586185249 590194155 83058207 919545222 180810446 337412992 775786858 425047762 220137110 292887517 793683668 520230646 823993357 481502854 113884548 367107166 998540330 177883748 315365642 343186705 626525156 167990764 925616277 749041449 780389772 355333477 359185626 909538924 969757735 548792070 364667135 385425611 730567651 882002767 63765139 15850012 163933449 247103368 58658552 367960825 325880479 721014618 248643685 331791405 649727033 94680655 298016232 562171827 545917947 272452746 639071393 679546144 650835600 376657960 549011836 491335706 211919360 467248761 630733332 369171500 569035470 644512091 989294363 669806360 147327861 510833234 514966638 732312808 782782544 460197402 871183671 131483140 46905903 985953777 855264751 897158304 200270038 25883511 817522425 304712238 267018768 938827466 830435391 145128103 977313468 839988397 931848157 496992634 238507918 913976952 363079712 345704772 812771214 312763641 2581722 286049877 553437456 539879245 222731022 68078780 462720291 500259630 872919359 942579998 416471172 597090998 480939722 780994654 257109570 837213696 264236321 275769147 219924389 381064510 361619430 396503402 295484718 994744301 114726055 909770886 959316881 11231406 96891825 366975576 878311297 277245424 869253211 117841665 67552285 543437004 958171091 850142219 39975962 149501741 414491360 69367372 708672636 942765644 953952623 659068002 363088690 505603385 506850662 955635687 504182243 548671225 133503859 70510619 622065414 253100224 299494191 428403452 573815101 948521263 430381676 280213548 775401260 45044004 65333159 951290499 975074974 6291536 841772241 100928083 653685221 951287249 554764196 943575127 492403288 755255370 309266039 42482005 883589625 83751037 319351129 708538290 460107690 857423210 667987465 795552775 428363951 822323270 938378487 95648268 787131583 211056152 828958233 366542121 802020872 375448134 717783847 94727578 838324907 100029921 214140251 352121960 942576603 12376196 110668708 125031412 260351194 860660614 469657827 450923931 635149900 386132261 9046854 982660669 526507382 399378410 22109799 253471562 115449187 858095087 401138999 650632567 868548747 887976680 463284852 515349316 608591591 748286578 157571787 568980589 767425397 417457291 758496996 357721509 29075556 727099996 862481414 830676823 44746556 345750915 880217081 737053416 193060712 749424078 429732334 120802939 438363267 618810762 121107802 625773956 801041967 488310950 96532757 770742120 253270428 205264285 533109870 697520818 783283132 52077356 917416592 929532346 533091936 825461457 430530136 493074900 687729432 528508699 630234961 338066517 26557365 180553264 19822115 858440645 597450662 323574056 195156846 382481757 379979743 155627349 122918644 942178758 261504130 83968167 607728020 485492196 513727917 578864716 295858267 560837177 799454465 41101363 76315848 390258026 705040395 597346862 266391606 128680203 719852223 756900558 943541363 552706282 510203501 749720387 736572770 237852680 994523028 893896361 393152967 16579513 570314769 88557061 328063618 83900411 732493638 844393478 435587497 382466590 703471962 440104472 267294681 172168692 775160533 475612200 118429634 70589865 724202700 939709127 809009372 609617470 953460521 380961315 419849465 976687860 300027941 645648572 676254694 785035959 529900821 30255718 435928734 840408511 150063658 900748707 682542849 215014752 335082156 826618050 553249996 936541286 881310536 95606722 595645110 342102898 280532344 171226231 817087456 725427190 6169002 534124344 805311624 981222628 582889181 932583586 691543995 523117093 647115426 928427994 366904048 177159802 727519737 15047837 441144956 279991179 705256732 397993328 508413198 568835453 476472168 933267645 204273639 63104551 315287248 605904447 823250218 890024165 398737838 866188006 724396946 747015379 850470189 853879382 317349078 848383522 410847510 524751878 949047223 499855808 546881741 775106273 690255817 209103968 968857518 225643798 961854936 121944033 20432511 617121014 217046934 956671495 240952028 246979945 188300775 453204242 192700736 673168745 79828837 65279564 906073209 83502904 766491581 438470324 392430848 690567087 810535694 889681781 763992895 796512421 182236085 23013518 932708637 937663532 6447885 135085647 185259240 338582128 43472460 704307228 829320602 855016430 936351191 649567175 470871028 967913093 873183734 635552066 956108344 313108064 191037348 243812871 709009624 78731470 417673256 282970645 447550848 221599067 901617443 269493244 511835833 764484658 501661061 139334607 323500250 805998942 593744202 425224556 629580557 8148235 422119216 190802200 99137250 601969217 597997607 431977088 183849005 542541096 542239243 200850797 257501213 811142091 803115940 664593633 897801787 883181612 6754781 874337683 165197594 569606138 862389439 752888773 296033081 614379416 296400811 353144719 761598806 751783714 657115444 776753173 577262569 168665011 984584531 872161438 926386989 644064486 136895669 625821320 389292346 682596306 973950655 448505947 814996739 815556183 344123549 528667495 135071924 589263365 206151240 808033748 902798765 661143533 441319918 255885038 141686756 277519864 724077063 769141451 176528485 726183794 679891534 688491351 667364148 256906985 137555659 530511998 757411103 554429816 397192793 46881120 536321552 685667861 402041406 159808703 527263054 6383777 675963847 222524648 810064013 288762766 192057757 178563359 282020073 943753819 618814144 771116617 683882286 370035735 140638100 816675874 764080650 143834900 390372847 187481575 209833390 686905997 205632892 397632216 783284417 191288546 143803413 616176883 282113265 471162813 364989033 159210427 869711767 279023757 629574206 333088153 465382352 419554752 913717065 157458663 89777283 750825934 978143500 540904846 369276023 867883874 783431061 801744491 17274781 57894670 624854231 256307313 849660218 648307270 809235013 164692043 685131638 285861822 472682317 173352715 125908648 536235781 86515403 758896373 424405908 565760555 981600738 93185057 992495304 262810242 580822267 710707126 389040235 446074845 934630809 463603585 812002112 106670200 343322572 639685458 367624518 242709015 466327817 176331804 488696797 577152348 309168624 679292428 390216712 223526578 249397100 141533447 477955954 568922425 763763107 374018710 686029327 866279336 879742808 547394279 86088769 193909214 579003189 914449437 974859476 582885058 111270927 626453369 923695374 730276309 297162171 218265281 178246719 566564184 941999236 529470197 932025405 876553061 94485936 924586754 682656936 216380273 267714619 780944569 890168860 45694317 952584936 241466666 520115585 765002364 161193254 218241897 89700686 906103746 326230613 664734465 150327229 371035008 388368704 59511429 431617111 812629360 874070882 54921901 730773593 445878591 346844219 771468378 630608179 721230260 927256200 739883828 503399116 158102825 241423443 622673305 568813972 611788128 396635625 356898661 958673327 213393942 912730429 467746820 909600841 880696113 801094538 306415838 239879884 215659889 252440393 557922086 641377373 947441770 760794395 62329385 483003059 692919055 438941993 360466652 26548956 600580957 651017010 90729476 379182081 548068770 597189505 703196362 728456543 542869002 289709177 965946976 659184442 199948696 652795652 363098078 848630135 809058197 940362243 897824202 885711918 296478476 180911382 778227641 530952693 83902158 664234126 162679316 569925497 466941407 57484016 3038766 516218817 125588796 342260714 355331599 466229553 543600893 641253630 217275279 348661530 258314671 179272583 65162598 398448341 805725085 678687712 67856860 117577823 795889841 849982157 561001224 257248859 19817283 176756703 310859353 768705667 951041945 64270800 393210934 161634013 29395670 53380224 89101570 135428412 975747649 127797100 850463459 650210154 618274444 613194948 464889755 143593683 310167040 799204802 280115958 836117707 221960719 524977963 121292446 477808619 149553141 514185839 63031941 396207036 494954011 133458950 509470144 549173493 829740895 314534996 227571211 665446431 480043016 539754473 65128371 779649910 742197234 781826249 238045258 249410653 734559990 975413941 97574475 439891635 705698492 499354560 645347844 574342551 644752959 87956381 869578647 941628178 323686560 125644705 100953790 317671381 755530980 841141623 233553991 243230159 888227055 868606853 293947139 673806445 325700878 144962971 187909850 589377812 904967625 80783702 763638126 200333398 864143008 528595860 990083454 204741874 265857489 754687534 453197433 428250593 279612009 690341743 619219524 508173398 23932003 694866217 98907509 315949429 99776907 264980081 470665148 741209150 752996655 840768725 95944410 791096380 149135698 13429830 556213997 351621527 624316255 230272666 400058224 677879128 528678726 16792877 68000448 728564835 507038342 965395792 337776117 696552869 93439972 104282594 326793270 184686092 527413034 233224115 225036558 835849734 396057884 346267782 3458805 969507227 468802608 942848669 167903027 778840313 424465821 306876998 283350646 182585941 556579418 788681476 120729514 132648314 317746990 756279288 778185729 403115406 412141501 158969360 358692505 866480383 104302331 75618889 524554803 817686840 299226605 457878650 835117756 910279754 5090192 882080057 18265084 471384551 422672626 15045105 739503416 75648802 194657621 46629022 937180845 487172170 723546767 424678538 74582643 967276211 938993194 532365504 415938842 101183606 781140087 508979909 285254816 82079589 338859161 287942269 124638129 244039397 117394455 420103023 47650744 641454292 605192156 487044761 954010114 564263802 885962330 312159215 711631826 273776531 147229187 599063017 529922307 183797910 816731233 283949148 138753500 221835545 919217986 987522430 180986860 193750685 723297907 170384597 144488963 602382273 719102205 495013297 932586224 189457495 628858571 536792578 266750174 206234917 502081076 31440619 233953060 518182369 993348163 521913385 126370523 116403889 893460236 108577879 798114030 965313356 241382944 474483106 310082963 710843256 496482413 366415851 667186486 278056701 531188567 856261761 219454396 615286358 749682695 425289151 868561939 294325531 544102714 542125286 835529813 820684824 724326193 850732862 861491526 696129090 717104803 209203537 906661142 347947243 673368871 612116751 598467216 584628651 267440879 762992555 938196324 298165380 140962171 323322830 795290460 904527432 186163996 101057478 268963985 665613169 314876454 58450512 868482744 200635181 253217436 212950142 242048634 888596906 391517487 394427661 899836652 749136354 742496512 546281491 881777034 703509162 87895155 420096274 500994157 192021627 122617942 176518801 514004081 334613662 788037872 30670803 797122307 189205293 468731681 350328914 353899482 516803496 252388892 510307948 379247526 296976233 907277972 537336527 621422855 602217227 222587475 403530483 391836733 558937094 77551510 59035189 56631356 415230709 34887426 316277343 502279636 311742697 973414507 321744037 374638749 469800370 622129784 626008411 86940734 269696223 613781146 289178195 208570344 142349133 241527465 231833552 76453873 57856114 204800783 259174534 569635108 897099777 720647444 429295781 733177855 379968746 511931233 906573261 126970550 932860654 424594512 918635274 63105478 611601869 977341441 791682484 759825171 752207958 988243970 370319851 948819018 37452808 494593197 426340279 147370467 441095797 681877417 192248865 325842305 36421135 456549093 615528066 110631054 4139304 299533568 191976185 282598315 285252588 787639753 152810262 98916874 910209701 831714007 133288687 538311873 274921568 875115084 150925344 746006538 316665097 989708574 394200318 86898977 58701458 822404469 591101445 214469183 214333575 250541987 991279300 764600410 602382787 557506339 384628150 239578436 738138785 191187477 785970808 780539799 898934833 561765987 505374596 760533211 212870491 174986324 649044915 620153857 950500975 25260377 493945772 944591240 764704424 284527137 619263297 899974001 344453392 377318660 274281628 405893115 56337172 331185133 789733552 693563496 303130617 342750294 694249056 2388654 314796103 850056680 861442515 146047681 471661713 56269227 95298517 981655877 700233012 496024855 388370872 695127784 515921164 743098112 348939779 271072906 117013602 467813989 249085910 647908204 638434670 39680164 380522200 694316487 798673368 816844859 117051034 168273195 473929264 183848498 485365756 398022653 731109414 592496883 481438140 930534749 245708087 159097285 603271220 381716281 358962963 175023379 408828199 383955949 674936125 555806843 164522223 395069209 631440040 757888122 2247244 968322407 15389282 222263050 385646021 398208312 19024222 926850410 569566529 526162706 862219841 964323638 866999620 513137360 361253120 211996264 452271804 261276296 772084289 51478040 743220759 22552091 156603191 445224638 447368551 314995373 545817392 432806029 836967186 39026838 932267752 193358180 795384930 638829722 452857716 142008048 142541645 593100993 582078215 659243377 397995827 48577526 539673631 382977980 644759707 353786025 450508444 752347694 799830394 724687457 543273340 768786007 713873345 867848292 271375132 415604029 529601206 699411961 261251999 238118582 187735733 170763185 102209684 22795318 120021935 752953615 280495847 529527763 617152156 133976350 536610371 424686818 660759513 347905844 623551616 816059541 910324079 534760949 573081744 941270102 484136381 930627624 769637599 424784068 910087565 197109114 607842578 839076537 992366806 144946336 527621196 414665800 707130660 863895379 826181976 754162539 251496016 550411013 119841049 206281212 942724006 991058829 562773456 211625581 364129982 258433742 593725619 884563737 180647825 36122825 419973673 954667806 470600883 503635351 479367952 490309039 923345226 788506139 208494524 267896003 881292554 204328468 886419627 601048640 749106309 812241213 855377886 322820537 439781092 349511221 89541847 384931858 93032231 332670503 751512461 295438155 773063304 68254456 480936466 233436415 901323239 128526762 152078065 899696490 786834996 411659649 235475286 735295974 108495018 530563373 64068734 366741956 382765011 529501762 101670114 427101008 279648906 914425981 285858907 576603536 336854043 930455187 852809815 227288539 314618503 283827046 75371923 640468044 190362497 175422085 315522719 388243434 653369146 38278571 802110873 754275103 812723603 314021826 822135791 280685417 838780919 292104344 463775624 432186679 296993980 846330107 280941299 178304223 881590668 422208217 627542214 579263734 223189110 880891637 925970946 349095040 187100089 128200081 169404898 357260682 591189784 791701033 498982150 364395663 304260060 610891925 864228804 343597978 374739459 713608802 910382788 927212480 804792709 616789103 510559499 973081060 172278161 689234616 734146809 193444495 627332601 737332035 585027575 233675330 997752219 865959441 867008701 800281355 911946805 478148389 548627689 637110387 659874088 977891168 368079754 645606350 306984605 377499600 394037330 758980855 637129854 928827954 489781219 770389922 285322801 231430254 564021705 313027672 57334338 471330862 182398983 789450430 580616827 637425864 338584923 413589572 747556663 756494559 927167486 93277357 451695322 20937283 976212943 780845107 938178002 763325083 467438196 738751027 538720054 657835730 992341883 69621613 328255247 140116614 547369322 851408651 720325443 107666266 507975805 608127723 738104778 127916597 732068223 896941529 959820033 899468944 389987237 790447921 427561053 211871535 474804197 231268393 680331150 843636590 625328801 663395891 104489903 925726613 634991212 156709277 820502031 877119942 493436950 843076191 720448672 261698608 444658076 424288832 747893077 748984630 528439698 802017632 189250508 866134498 576056187 671531578 971619526 254762546 195395905 200943778 683949293 734695094 846255204 970705312 927640913 978315501 492100017 596455974 797702408 128182373 301089208 728193896 57076957 577998863 521968280 426017017 468692557 470670441 637028851 111809481 831998250 570621858 595001341 460430525 824011924 183532012 709133852 949192259 721030492 864556559 139735777 494460241 286531118 366137471 56435699 461352255 977809217 301518675 462778025 358021059 362206168 101927706 5004672 635900730 659438961 936835990 101898728 337242657 350495250 534222868 292540284 374422534 105937852 57836571 76455645 431772348 98642077 948583347 778445496 692743463 549133092 230915644 526265266 641283353 508918796 629596861 61826640 798399122 997066399 936682844 349599447 618110098 431396103 627712842 543600971 515343990 301676138 661493523 635566720 920862913 880928184 129883151 710984425 349318066 618300151 31860354 432007017 192536321 86755914 965121822 319377267 890439179 627064172 221416642 620662748 282631735 893695991 648785634 298170726 633441459 354578443 63020768 266972737 93752503 539230552 204535080 5237336 29577415 962463547 779239812 199053916 126649155 74201058 802327457 400477409 807715489 302064935 886820472 86210479 183450221 445574281 344843013 119740992 821350878 476187714 302566148 30267457 23586603 204991739 421623895 869560363 607501496 14427188 954920132 1274282 333452872 828473756 817530256 257709793 350133074 290554882 904330645 120308605 70164892 364826943 815768211 118702922 639166504 881718671 563027903 615821635 415737626 951610385 781768001 111372935 617003613 82701033 93588264 916468727 705033403 717196291 328857082 981279224 999613291 661782616 440569376 874838835 952314186 270344030 227936941 710546415 988733275 606228365 172603143 733711787 427079914 743921140 339795302 630844213 219940961 188050814 62873238 255700401 787716345 844881530 127604074 374946231 233626407 223635015 24745199 138509091 131591207 782305883 891919001 317608024 384978860 11835019 978994352 300019973 491401172 642490228 116493805 396488049 441224167 98436477 799188655 70142743 434996662 35248096 808826608 205460494 255937437 992899977 648921262 170090318 674260098 724637489 504445340 315860649 696987161 931676054 33849187 523240419 188903898 563473386 665241776 110427066 64279405 5309479 289191621 715991924 647068710 525999827 267356642 572366016 556729724 21395042 28492539 707531334 933210126 29734125 384784050 516708895 9800905 502226308 103111188 236299835 302803103 825104584 970030197 843045211 506908497 761827563 474190229 97904800 976343161 378405905 534147154 933115135 324521122 987002314 448945226 274227426 726868291 768287016 999102272 174223545 277454309 742824575 707605195 948362927 61445966 340991552 331604015 557996213 714323020 878904987 363889133 483059344 345822201 255888842 667758861 29183164 348695692 517552992 962254939 238543599 622647280 420781855 882163006 293309424 910621110 479787603 796136074 817969981 181246558 380244919 468339678 97133435 129320363 811719888 718015831 581458741 118309485 434602104 590314655 142630507 397962408 37081932 183711563 73512958 586949531 439930593 902566336 642462463 123148794 413321007 235404974 144462259 218957063 391629102 239824183 181604916 853181070 337344226 155132139 150565377 46622456 613058364 319891 46969929 669616123 247666069 251290926 401115339 158972853 864378922 496976682 689342545 853365880 212196533 333667801 447913921 211892236 106021698 672753616 822816260 390311142 362924321 883003261 57775871 857155513 153736203 544035866 809702369 474448335 964518009 521264277 150644703 171168472 409163307 483773076 180163855 744384701 214976126 968983423 430983015 749394787 454071013 785302030 379700081 702128073 790183478 652787676 238457511 402346614 301142695 397714658 384261332 892828373 129459622 15638506 231586397 908354019 677917368 601248157 274408060 552404956 218694206 286003017 322070921 359463842 356082818 329058772 716832680 771726112 91122881 536301389 911043157 554425753 595450428 781813679 571061369 497923749 744306940 713289988 90323186 227142398 944100344 724614570 289829432 532288422 159067053 74105257 278382472 40365265 791264638 725574397 57846601 937683044 967424456 503481684 411694217 916325127 757441120 577787041 586569177 795479354 274740571 917862103 495255552 957774291 274054856 451533690 279367996 576771112 163279072 604172393 783598525 343247411 696585645 34167989 945066538 135372075 504042114 175277011 662386703 47207957 580263389 277868665 215239611 864759820 902770817 946735573 445171196 266853380 610690879 560691174 600709593 408859927 869815732 994927478 750984203 98835876 53035633 538287066 757012939 170615385 308587082 682081046 449719144 877078404 762347892 242652782 553984613 222087842 775605044 993364354 456419098 452324524 915676175 498851923 111748601 145814680 943091876 356732904 924432830 319283853 966633390 760344774 461815311 541569251 304496510 207615374 51081102 848364923 757330798 503237003 417875276 506385824 847047286 140593671 53056243 347493753 253967197 205988177 53274034 610407023 607044997 683874392 435033263 800910993 619746830 831742161 232880182 640049644 366317177 823216754 415542146 305214422 958932903 126531504 557768760 803233483 599717542 45614473 109732566 313414524 227322718 352172972 3437486 699081630 458754944 181690772 829156945 612259462 572309367 234542460 427244537 636791496 852294463 324962689 91822951 267742368 959934807 766616898 769257866 54713395 160896147 814919865 174110777 895593827 985213628 500959165 714674015 260554062 578857566 28161901 854533930 438979748 1723721 150388957 863403656 118145801 92802017 790876397 540141630 758254514 434732081 294965660 84887618 630294456 848212449 594088666 7136918 268427391 167099109 812366407 632857186 854776817 945079834 677291893 967250585 851681960 880978904 728060081 508652651 117704614 278277612 614832220 557105148 613647637 504069429 965403195 364096520 780380347 925666615 176145631 657442946 939628359 998471751 331509120 717573004 619869466 881903196 610457069 562320075 848833576 467447654 778972742 516684754 979153550 906127360 460339557 797591388 609817372 607051607 546300140 263571098 514121611 177730111 38606433 404422028 887889057 176259953 436922398 692907991 646701919 74317660 329765455 47799921 58207286 683343445 15717163 927532176 334144314 283591643 773453653 991307077 488588830 405018564 63820849 38759514 603177158 723992138 300329095 509431684 936396133 806128122 912683490 618848434 373781016 856244074 170223209 511421212 56875043 222467752 742192163 88843673 329943813 322731715 655183072 499892144 347802278 958561456 474182244 52244863 923504388 986874648 32836273 794165039 108803792 796616611 13149795 587597273 186890683 283619137 65064288 304302716 186024946 211876948 948411118 596340442 824737522 19998096 22767101 822572351 787011455 689097787 403692754 555490903 565691811 468037181 9948781 511625653 484193008 283271099 87402378 376075519 526696860 994794870 997190619 238352931 498758271 906064878 952701777 239237483 828070454 790896971 551958849 169412810 84541610 486043448 919410716 968781890 733286130 621804295 491273699 233284005 313708067 29547904 576329835 766278920 869129648 642662846 372629141 671002457 397238646 25625312 168704528 879512180 917182738 166810715 244496263 239521567 676717173 224570873 797298469 499566094 666879713 895488664 742451825 532939386 219469181 51169369 948124421 353485028 284643955 134345228 303015847 90666528 211381822 26099658 851339222 317207138 782984950 677999538 459282769 948891201 623465953 913399781 832417745 440247844 552073457 145763051 473299736 881669859 233309768 891663613 571578072 584466909 919218850 721489815 262172449 617012950 414375877 476933213 738793188 615729944 78176257 490726269 577535510 332574062 196520351 958110767 449433003 456859847 667975577 128285615 402241928 489962547 102853538 343844415 762008535 952545230 944278902 912740877 367655233 488552665 563818245 585589005 445736104 381181391 243761301 788724359 633628804 511076045 713503993 30972193 405299725 119180332 21839847 341066677 403390556 12012612 6831758 297361749 371293848 391061570 819331110 499496572 673641606 317936590 827399344 429287199 192800982 155348765 877950505 34693543 916766918 142134482 267454918 174236352 159140108 519350613 778884221 458828260 628847375 921903476 327947953 9509084 938649029 920266331 870924335 600328692 4352456 500865421 596114661 126249907 677931024 709816936 854442823 982401223 802665653 489044994 80827819 844129202 735867386 380939936 433509519 23094248 893554495 886387558 873804640 839654949 64049735 431337925 107742405 392747470 555550588 877236474 570286569 526099601 513049726 166497694 439694819 243655431 773981469 327490110 235849599 582897005 916478953 677853080 493838943 408637638 539494962 560148391 116252093 847354883 256605731 321098297 102549675 971637500 382416220 136249340 283388964 689466319 754164364 765739749 908177156 990588925 936151115 214670803 520746922 674950762 647305453 983817665 422045593 921921378 400857521 856058197 106416266 439787990 271056711 42598433 866938196 352157808 664264732 788107431 612766450 317857546 610868485 246667521 138646823 406218064 411376707 371611282 155082537 239709859 271700730 274936121 376620309 777320884 133633853 846130770 223292572 306672147 62270004 168753453 925115695 411706636 755755137 832983595 445546449 787785206 333726397 789580186 497890798 887471527 491289382 543988296 463180833 922918991 992209003 635008133 788574325 892703116 149130146 210224724 80903758 802431786 908549425 50878316 81304390 904629941 216377626 536141696 274550233 280869596 350373171 952538044 238817947 8303783 397010841 494938044 425721517 532400455 247083180 676959689 628659332 449813364 665599593 159069363 771163200 24095803 990216233 984515110 238685483 232492793 9842857 337806387 100609938 437528534 717588854 359229691 154291935 536318378 583559799 838170184 740507399 704933713 899820909 183252136 369225605 721271108 141552313 331027593 815790543 245463780 904614125 769144746 802085755 96015092 101815886 643715964 848472950 879771419 211833853 574848519 254662130 834449500 546961468 467503327 213023026 681585685 369051144 902918395 867768609 871330180 603832759 583079114 847545286 425344322 585852869 801511286 495916415 803612912 255312926 898334077 35053314 237311981 276698514 733605682 434957441 490224624 224131187 276473867 220068486 412024874 935237638 74802235 913107132 40464804 755933712 846762324 40069061 286301619 428319220 102042862 10632039 818487516 581345663 12071145 426922724 640166557 206316363 202313882 567934235 421552995 482824402 230875240 292077161 635388167 900043077 110597017 638523946 227724798 830434942 886348294 961060516 698891339 660128268 552490506 769571451 270594082 634335581 760221750 464277491 593890440 728720673 772470720 492671346 971952397 898568392 695961399 39927833 187307422 943395901 160333193 951178354 189008175 568534338 57464671 831526229 45438165 389249363 40400501 56206061 384037943 539142195 853005101 83338534 986107224 201793937 364928794 779805000 161103984 547752369 892436047 856460322 818143174 505243186 297258736 123461515 880887391 88461453 349825181 916512525 503103015 604506659 50730673 307484320 103570108 149351999 22030289 646781354 789223529 403020142 127960356 26633955 648873633 931017105 895264768 309433203 482008784 253854209 374418446 607520616 626069719 258319840 432314130 118609631 791587114 970673386 576846956 105002932 261014155 361002351 44124274 354084691 48475060 5646127 84584951 837111769 255164769 538651336 572115879 498241642 821301500 242497274 801533891 904074296 873619874 77363503 699818048 308469496 985555781 443062687 351140013 430084440 419292696 169994903 281058667 522918891 731130996 954469613 873496569 758304146 810546491 775319046 48410440 699993911 164965325 47251676 95211692 659487395 244218559 424711356 543435039 827249187 632088306 334560197 103614444 202475862 865843608 691628391 710287403 310535583 318047635 68176621 351623618 296139426 313133162 194369776 620947711 13524245 198502581 525004757 435359126 867385287 635959475 939584719 453077920 595411640 577493115 512197512 961506517 240511805 349124247 965565381 95463618 995970600 956721474 946626065 992349051 439239929 24659232 736972698 93766715 45430065 895672948 108569700 11640647 208335534 576446689 743168978 707842418 463969654 238043895 410620300 423979145 310546158 549653662 383169208 599111900 78021496 687651201 246622477 9055737 926752076 210871843 209627702 867852263 887744515 708258879 853512600 597287305 17503994 556317039 801239235 18369656 881324082 225225296 703941877 56262953 45476343 552029634 496878341 463923537 206486396 917966011 247291032 649306566 40867147 698666879 221724439 475658404 434928325 476975791 37313086 212286908 856845631 368134857 962705743 392124033 721176509 71530718 519856287 260327 480584933 71120280 76495140 639990313 389027199 193064324 113645009 523990554 395660347 714922512 97615876 217734242 911808366 761246023 879287590 808678270 176346684 680558604 734345480 365511894 945286226 783784131 359509807 526540045 670323342 128924597 955104527 882965002 225763875 811260793 842025064 714689954 430354703 289497601 449358984 216025185 138215718 556208580 831702798 964657368 518559186 224667548 981970670 71751261 235849748 54345192 179206338 235662107 680608608 301964412 900585257 799225859 846822022 423238045 879551165 849417867 972296402 919971637 517113018 213165209 952401216 883410305 892710921 756411503 84396514 825720189 216155346 739807437 93450451 635644500 995174797 348957129 854659633 256946221 255965079 389164114 336646164 231436480 109955732 54727518 788706947 223193188 574164983 71859647 144517474 650084563 236402371 867690621 441349380 550312448 476867541 688574267 322464617 115425889 32337490 123297370 444121158 833359741 346466445 583192568 190953163 652452609 464475617 928254684 791341811 369516346 161626101 752332337 897845342 649596956 714107548 572316843 332508660 281453941 734049342 855335697 259429991 547691748 334254396 596320918 668486992 804529226 454638734 404962814 335130120 501070349 205217090 138838336 395736736 125048597 489920034 628483110 758003559 188233567 861774458 259868012 566406361 190653609 837025344 354561274 395256725 907692637 301089366 575872281 633106587 93325910 954016185 628542746 851617457 280250155 269308267 527156523 122434905 3817485 507468613 670875911 567291581 464449393 707190203 936945748 600327828 690858351 406401368 491529444 911440379 871962061 969353430 992056779 625098218 43846058 356273530 117057629 728023113 71064943 275314929 252040900 710821265 283426914 744694410 903248514 589436984 765437613 788205152 409889032 903395763 283743604 57296215 184457029 74567274 889335618 787154397 639992072 637788278 511698621 64141633 721789800 777179699 331788472 82207683 505800575 128621880 980514497 15802956 546437314 889012694 168706109 24104097 600625849 289462625 288940109 132326907 685470959 958969952 871348629 652912142 437292645 402427033 48960903 932491902 206932640 829669736 994981064 37045716 60993641 315217868 34847800 601181747 327183059 56023770 316253239 597143525 736115646 320209674 98512020 933749661 224783238 975811713 269315686 846617312 319940339 615266912 991387962 498210982 245076936 578366676 747698811 857150563 741452781 761013038 724128053 905546674 685891171 346984712 46647995 35494441 773561205 178104056 335493351 44208994 781461814 946005801 64755524 578265276 351442018 63492969 746739761 478712502 140837181 368871685 498050768 177228459 161933645 656689829 467655479 143509985 602071802 164325243 88098335 954971945 228211162 738317122 50076386 907256574 450561000 87687911 983670646 309297241 592969230 765364697 48041503 194623094 466845367 44204524 391719209 147421246 511781432 399769124 441638969 462301207 777040793 857049169 926339651 570641285 244052427 732234982 684247996 307142635 555235344 402953542 672791594 930288929 695108863 795142721 549001601 974274754 356166382 459218728 591917776 546628373 541888189 633971645 713792121 193575664 350136165 936319951 42532080 307990645 419926065 336197872 834750208 787573862 269576149 142515985 516061751 646874832 994304183 799403044 931886384 932298716 988885676 672698574 644969134 619973591 369353242 370224951 983313952 280957802 684939729 985800915 52396172 995342326 434445000 633551241 464251201 30775588 613410427 321408006 521327594 263422746 654315577 375650291 163964474 86687599 974712881 523407490 801100110 880393860 24423998 480963812 145639192 903131262 286645370 131769705 848317390 173717560 975474324 984553724 702389228 518170317 16194284 700723505 826719224 593469582 289205120 953534715 848370284 796512086 720245903 296568250 755089836 632942216 272412465 422994915 163453947 108650855 569858998 899549639 556942500 985902922 402818119 633957150 5225257 482572929 175726863 960608602 634214516 337361180 325181404 846348122 988253622 53716955 358026443 552094742 203546106 835119426 256107837 436824349 519861922 719607211 442231540 441009795 286366002 706890229 77669695 227904108 34127159 69166895 878478738 328409102 310208690 842726723 280916288 818799897 743967960 930415046 807875502 594915617 481775563 103764658 733886628 900886019 107110824 970140439 611623768 927759397 815385444 792517485 34096530 29587256 959063256 611188815 870234407 776534287 877587413 205457426 30191628 804171000 164044805 126753022 873987661 919300508 490489590 433893301 494154798 980129975 411553370 53548987 847398275 76841974 806010566 860671469 834408094 4512406 491487534 620898095 672836511 890146458 588373901 224731096 348714646 317884566 703501931 932213613 571060222 593782096 448404294 937005399 427544707 140263583 348844795 765113548 933486007 977367663 182855814 14085792 37869955 444200339 696101199 852646916 865079815 682507788 138613419 400582444 901852916 342116997 571698541 854636368 434588826 469387222 580209682 361347294 730669263 585356603 189043553 639965219 778290960 715116092 483030934 432394857 699234873 929094169 954807320 264804115 720626902 305573481 463213357 519817279 779107804 106079793 396249929 246248972 687511692 257904160 613347498 559780922 291718732 687549136 460098269 814339151 219977239 138543502 554960722 647988745 35088444 194275862 109166084 752411192 423939161 623603002 248607385 40732939 307259213 55391431 704258612 781900283 578921046 944324151 861998216 770043228 786066567 614568509 561644138 752704468 90543156 418288546 962184976 544198568 436524557 333423848 468678368 73804447 695985696 817139258 65243857 706055958 985290010 304071598 79440217 923446520 150958742 416731012 550391315 867381337 619458653 139636372 348247633 62877095 372690513 826652593 943915140 183347217 465012460 125945020 868084845 964705482 29345628 925238942 158112442 590115492 403990522 839947796 736707220 466694981 701921821 490312380 239375586 691327079 657645206 173360415 195927379 490832053 773994600 726883925 838076586 250796142 973097466 872659447 924822145 855525131 832313682 29748880 156714095 642480201 147831525 815029414 122616370 936516338 351514056 111375499 113088147 371141539 611330261 488368797 723962015 415952526 794649542 231577187 100330444 855823215 676571183 551884370 574677211 842394812 243740340 276028427 780331624 366626242 97266445 472942260 298745217 549916731 753637644 959156328 808523925 811859623 756498270 355389669 257417732 370998109 927471716 76779123 768643837 420846595 261454376 591366724 938668203 308529150 785035483 981123968 486332921 456627269 565862310 595013604 542029835 428418813 672914083 176672193 898978677 2297335 854019804 117922020 96924014 606686389 164328388 677771608 878355589 962400236 119397424 505378289 515771886 667619164 604621583 71401474 639530341 518094627 364662444 422549066 351607877 168876979 560426448 61847458 815691820 401501872 207731707 946838127 406243928 943826589 690221267 78886088 682502166 343470669 868845395 340441050 475287461 183494351 715640911 871598077 383063664 131708546 228955138 792139581 884929477 805018861 437403125 313579413 145692672 597263638 51990105 760150593 544574413 715594101 814719023 258116405 6047175 146653038 536837298 100292514 162152487 238687355 652774757 899393493 195242018 978066915 775152673 306187155 46748653 291863391 480071798 79301888 475394033 83199867 529438964 443381162 980080391 133698899 829038868 265762953 222364050 21475158 479298270 503123710 707570230 902607152 952678095 510788458 923744121 459377470 671730016 748386686 31056947 948626485 833460790 249382345 38041901 75905314 251343405 41504420 446103137 981939382 265238260 26489986 998676858 389291967 2859594 611823838 548148223 969279942 207831429 758344730 487715660 665758450 298183686 139197315 741057967 894437836 240635268 31060241 823106774 939813063 42603526 263673968 239093025 144467643 994841033 157609115 970222650 919445705 441098503 843438712 538583679 145992381 165331281 157322428 739567531 504487866 740084294 603342380 771006887 219766426 82178354 989583405 142210006 803804389 830489285 132695316 894155704 12719176 385257572 570550923 93804377 335657949 282876097 522075268 816807229 174458625 256111157 132869768 280151296 151452114 221826923 771985760 397716056 276828868 812044922 403726720 27528317 981222483 711557399 376322166 430778528 310092821 25801430 136373500 714337729 829045381 31513917 563892599 1585141 164326363 894219918 659991105 911250726 209807876 764398437 42962036 780836725 726357456 665715929 337753127 834913653 51988637 111489367 548990682 48070912 536104338 955698824 146696278 814965900 641416417 705561041 578105958 121398529 819996289 328182832 952566168 642365206 99605639 702636693 36810323 903185535 627028872 102982537 416341773 312367080 245110206 748597758 507789392 523168570 103226902 396458080 222050948 633734349 871701410 3714533 344149643 227528489 367350761 958780589 34682461 89126283 318466810 986485293 378577862 775237722 280301608 414872859 896742705 879635664 242879961 116933014 793765443 16620853 34339028 470795881 562111515 805870077 740689185 88649816 856501679 328062239 615009689 922278274 880081608 803926093 379252119 506344260 892465907 230250569 438472824 82680427 214324448 429199650 572434346 241813771 326398807 252185863 527884259 662754682 728382298 867439696 621494436 853313590 312464585 202381596 634560030 2543686 577153672 401040265 792251014 84357337 793984494 178933133 534262820 119217247 431894940 233892392 465619267 808386049 979507446 14140854 786787637 402379666 334906750 88726405 407439879 381172641 983697192 386216212 938406195 887245806 182298621 519919561 559930789 370287181 81450923 574120508 694413258 193047357 118177700 276617982 722171284 143840845 481282553 290561143 283452291 496308782 97749980 617335786 569588581 477295399 921982661 838964457 332744838 367316907 628817548 502885528 715440482 775940658 121613893 482747140 902718982 100497666 728349611 134118771 170768164 445472662 378010628 521991912 238723727 283187770 941615832 994983088 742613774 282310751 163513099 29980479 361328857 996555715 706518137 252324229 288427057 97750447 601325096 974148705 924962878 20327601 754834370 82820801 280550525 104347860 657175345 398839097 610510426 515192884 945801229 288164198 266230390 684575969 170866920 265175506 222794966 985572619 274945472 669528607 189786933 753011119 521181159 536255504 894438994 472843368 85815877 680582661 303220726 2970750 816236611 78943363 412808127 408112993 564432003 762867252 131543681 474996964 742606779 105835427 550184923 180869833 171934084 869529358 750567895 427957735 343564775 558842166 568875248 200873748 973922915 937438536 782193808 778123092 777956496 971523653 526311450 978809448 155121290 934241495 178623798 249921025 195117298 790266347 121414362 190657332 816859542 948244538 168375368 39523955 161394123 272748494 745147997 759479105 770644910 580460142 694976418 480688408 239400036 471719688 840420788 292439645 955928926 413889906 99812529 625786533 763136405 567199803 693018915 645758043 856009170 237396236 884762925 351879960 927037397 975557480 87421246 585304602 677962545 834346857 105812177 644322900 358391934 315569415 483264311 29037755 745016869 454395790 983071682 658492169 34493550 832187940 658879833 67666446 829874433 362035348 455068987 116588967 262891316 464874175 53237927 980683517 613415452 270563946 522623088 589943341 385203094 731174380 779361639 208263769 9411999 870725311 773477325 253051239 9930665 613226306 119661141 13884598 46120171 823182304 919314329 635378010 355688497 235487966 599209452 515223527 143510650 621266348 168067521 155865414 211279351 205393809 637997750 266853830 205240389 228323270 438609781 667991902 119968337 733700143 948152039 255635684 7026841 583541153 661314326 270070251 411141641 621930036 690171637 16128544 588172648 340674041 994602090 973185487 923672151 703731069 394860952 112805446 235760826 880667270 807772073 918770625 90444367 831498500 644336675 473913853 255547920 596505993 295681289 8142760 691001354 921275883 49774475 285010988 950503866 742043690 199543390 886300508 585293152 200931883 884957095 773592384 72952689 208480735 962831767 276890878 814970429 975595340 205505758 781973727 566549113 223392716 809440993 493463458 173826557 297544017 690349585 773594153 304735240 899222127 467404810 90568465 553639268 405937675 808850694 104282050 83885759 547821833 165999147 874946190 908595280 615239181 599190752 162792230 189088175 107220467 11090227 877732407 452273885 552773414 127937128 802964560 909325478 809031000 594334130 507809428 352780406 254689424 629906237 908532404 249556085 580424192 482539137 572075344 749765415 624357651 437739679 972049337 447300103 650493509 752059100 983545636 877391996 703125126 72304550 526833422 484875705 546253336 688416172 528086351 121306751 921783054 348948686 254533279 424173705 88032372 221149743 422321730 7629376 370278785 24770228 746373048 307271577 47394611 637061169 992326134 954106447 483104416 672129346 730225305 920768183 900655070 388898081 771498869 197215908 910602938 883344775 767413594 129147137 623677291 856789270 250401130 528337295 589294889 115409475 880402913 556154940 115088329 527662887 823482107 669434857 985214938 901544503 141747714 592956280 996214224 3583915 714595443 40900167 241683849 851635406 370867303 280560585 663851389 55741975 667449474 144711047 531762446 601625157 870172234 935140931 679084083 25145510 401503525 365253269 655647760 456977052 669617755 472294010 498666697 730707155 894078023 867321503 620013996 42900608 932524255 466443645 228708624 970888327 733045134 585735020 789137575 311973757 847807496 827935459 713756671 187788569 718511511 883223637 252065692 549156404 584100156 574274144 769767077 843261889 862907659 532706034 232312407 936116638 199218208 821702117 668903753 665979084 271564034 92836173 167251292 941925507 613780079 209427812 34341282 2337702 905801716 225335259 808811221 571035162 449915648 764315151 524824381 581769916 198438502 27224150 450717508 139192917 437672147 177010314 600363774 212590251 923031268 9702700 586611818 512280219 566113102 721037277 539737556 899112521 847135490 457662586 480593836 986315626 889334624 779004678 281270315 835674161 714950777 90861292 101552349 671853965 309762274 404217770 32257671 213727842 133422516 878123884 575700362 265845925 276110684 818397945 421588435 335383648 369432404 233856914 54054710 611190347 471651520 811071507 415645027 487720135 121487854 146236285 737114696 803180860 319614346 413179917 180117536 113678309 273204518 896691552 801981360 618701457 403841343 850694550 574815322 166741878 91818619 321529311 399387400 464994759 983807153 455570925 295979391 614917746 21184900 648869209 807859575 721581748 783920082 554650743 33662037 160562153 964020346 166875485 631297654 191881394 687830138 916934007 551038185 529286609 653284930 419379502 513740732 373904263 133925504 321448883 260249756 694519683 746718613 892316694 927436227 662910386 982137073 658460931 802295626 718493329 700242748 882998335 553621847 804657770 187838857 522482270 622049548 784061190 321823605 862149151 8646375 44392335 555611564 232549189 57302253 913890547 211243255 596986205 399824491 638888374 883618257 433909881 84544109 202272976 783620276 312876556 23574926 759701432 685822295 102929454 830102696 560619017 535908179 270425596 39274211 55481692 221726567 383714040 973826892 259579852 201729243 490884511 38286087 823091348 531486283 271503714 198910904 531377826 485554290 892211446 245931036 984635093 470296682 130855994 423487943 594105650 53345591 478818265 758308186 612071147 564293265 54071719 873578692 311505938 542362689 369235984 329319805 364751571 767746785 854559134 325067674 180294649 277504133 225674746 387178774 841630905 798845875 392732203 449155380 240065938 392566455 787687483 815537877 616731763 818224217 914812271 596935472 768314094 166590299 553366892 86745142 998322028 357366033 276132478 705103533 180345041 605053715 148096171 361540609 621933154 250652834 767639705 70448607 792201234 878457441 990419419 437421755 380897836 156062378 20929726 586288103 978523504 401015595 564143453 891029114 914193857 866965890 60640544 959712951 354650979 288289023 435192682 364332241 517506887 825785357 837472470 209397883 775912675 576316152 831250980 245187488 328151520 470290647 577439498 72415078 46708789 632769006 338415265 467770692 101885868 187760215 666393381 895114072 697050119 81566109 845468775 879118461 592734588 89616817 28646177 237911244 768435856 239662849 346791966 13996497 274519667 718383248 624098691 233948465 429936645 92561036 520614092 232908273 798593726 301999536 459038218 293280391 809363657 541478864 183811377 125730916 462070754 928441769 718759998 814456659 442636662 634617711 679469697 186357069 33905132 865002383 495070427 201611162 716890953 380784159 256322981 589071888 426914730 279716237 782252724 700421883 99963304 448458064 468414168 191466562 912219851 475911822 917421286 582569635 61265906 897049162 357752056 117141466 511576845 307433634 136749002 769805676 550091037 666220791 772083388 870053564 766534603 255503494 962225332 470425523 778130213 325919483 553576332 842531077 977403772 482534095 888107080 813460555 929638088 12680499 297246935 303267736 173376210 616496261 192000781 838649188 578638944 506105583 919019124 848142968 783642668 963754828 518499389 716204018 415907343 735149860 357990749 104558829 878910339 789316432 904141499 768213997 477635765 537808191 173017245 802187193 188164786 802159611 393643630 835480762 944865466 480616480 672264620 293339962 346346578 843481913 707232445 360970172 551269082 743956096 563493966 383720140 332969804 951805227 533841119 536040355 854665631 766770556 286206120 795247102 103561286 141416870 458183516 43866326 935021888 286158315 884668945 712934367 90312836 919236378 817485451 430130682 969229052 585431848 546879432 183802627 602623070 317871988 539486167 644181556 49167570 784670074 417024810 460205096 584081564 581884895 680107294 233889476 300605143 996370400 866255949 523211490 13382670 922879721 51202281 942730705 545696234 311697523 531646130 553380397 510067434 7248167 766415776 106072380 737052997 736079429 661661804 648965472 353464566 661994621 914370249 608573924 914186532 749302119 174188548 117746681 906395759 850788248 607798716 116583589 442567138 596545055 662572658 246149933 770155978 425746419 57705053 831385815 87801629 582629424 184270817 721271957 942401656 149831991 395305786 976632535 885014090 664267189 746549688 748800788 307178467 296399307 963252542 304689065 944965471 588026986 331882584 671246396 557588023 654575771 687899602 39250210 228938012 204063804 752065177 648754769 70133306 525916895 622503181 684018436 193344601 760468244 649703063 642787698 159822669 983294446 566695222 118996608 783001881 282402373 213552762 408812086 396797998 922669002 534934829 839299631 819328615 961013306 375568499 386264175 635932820 563801612 547664103 829863871 816981134 642251014 515169522 526383642 775834032 18598425 193740729 953605024 874097750 475756160 624149776 791965394 435506690 131914846 449130245 528868906 839041143 556707886 532396042 101636392 188271966 298647514 558467241 771320661 298793358 466920564 770660194 833573188 361605490 376133346 779531442 211972660 290295129 446603400 274979356 156196909 787614308 271324032 782355737 227091148 687154561 844247448 898421401 358494727 324112680 663616633 514097130 568822261 808033092 791835810 770177019 452846481 547675475 849655910 995466302 685570790 766118437 931917734 586933647 799477715 461976717 354497489 265745306 195553524 529002306 259671558 8080237 373489401 669458702 86404991 42245442 634871730 120329353 968183692 195128905 626013061 761696614 618450002 166583664 64687422 224907016 638401985 404660679 658025280 280426950 430280609 587087919 259470403 243640591 928662093 133848629 914271546 960911321 147311828 380078292 486708157 695729414 955790899 837009421 837119013 920509900 975020370 645211221 711239617 146214918 579616846 704458124 734016082 478782684 557813597 364726442 84094692 990950205 622236107 903885340 571415599 659008459 428678763 659313849 221389390 126585265 662252972 151175935 826319039 641027919 781206980 661945424 417992058 518452998 567235808 140963920 351524874 716628674 519165658 260465305 11247579 270658666 180732694 659242364 181620504 696472536 510896150 526301268 924609647 167061680 35098384 872155014 757634843 221076156 90143209 68940695 593457642 899289784 374539296 890828793 315081588 764463573 657339681 767728432 351641793 85451286 260778596 862057831 898822476 249441147 702874181 547522028 687782308 665143507 149438336 487550606 400363807 338707767 876737915 947528180 264710628 209383946 246928186 170524304 111525778 507967084 570482638 123363421 100451217 745479980 780177411 142759238 351701942 109273312 599606956 606588601 609286012 897530990 8201090 247058819 253304050 558760785 768351375 81629526 489182062 232266826 493831266 682204213 603161256 883052309 172855951 992050565 885069316 883789856 914311248 992834001 935398260 306132827 658735226 324643547 943755717 185075643 7449064 161703735 507070064 121765115 590369285 321213467 662456831 276050131 302041605 304359853 621430768 883631514 931286704 553260396 78660610 739313518 87437319 266324932 800523402 217971312 717919176 904763394 631326551 884703629 721582872 685594808 167975345 933364614 374076156 319785512 300395566 258699791 525791997 538195424 365125923 714696595 254712484 78001566 999136244 971427398 348729064 534931637 590051186 58017490 553539703 958003235 744126477 953940220 188122812 262905397 758700380 576196278 832268222 429506427 102571370 737059174 820755266 983054991 919938323 194384899 815530447 530257546 394983209 518141897 791786614 536996312 583515 95573836 358185239 756972701 381327122 791297537 449758072 479202946 423195548 437349467 154453858 441016015 556776697 80680029 373849074 502105158 990373235 105956596 164721583 262771574 413227760 160450235 102041714 509700519 139941650 850667196 801664114 823727675 458873033 423814530 481362801 941536313 521755899 850386926 378133503 67879391 769544616 752150651 246179691 38081433 315658772 493122404 606665532 317152679 674681623 351348287 633290018 202810235 425970454 259765990 612765935 932041508 186440848 669665841 585930523 948860477 614983682 536672143 323705383 620208511 801103825 923171451 955054092 210298060 639764002 161921112 462232586 436043687 239569286 991098457 31102651 634020742 820603362 26450666 763206601 725971196 934255418 827163660 746001557 947758046 73661770 823403843 510309598 19423402 393512653 152820205 43753712 758625593 472290791 560659684 459057808 924317347 896102868 476463412 943796732 544183324 45168366 390133296 435042505 277815039 417225150 349917487 319719565 843846885 733576107 174203474 662158132 109869688 659094800 632705352 157656100 207686439 569147107 620734649 516769203 288201992 289633139 126700082 315480801 894531008 490525316 92734263 658697532 238306480 195683296 498889604 796468038 528655864 205985988 58001424 922575579 648877407 186741247 795146346 382940990 617730888 756538230 384454130 942581585 993184442 694407170 339183345 8835052 606888176 88003357 2333133 640579537 69774134 897637658 832109454 867992387 344071799 433184372 928703951 9471644 761087153 399247148 882773449 825075200 525667860 449244491 810312695 824056541 872601974 242893787 66017916 681505241 923966604 701268208 756032892 543889156 951539344 316646145 216594661 923350859 659023908 174074366 945037601 636329654 996892464 191302773 748976190 130371515 753132343 922700045 514881320 75424507 925275861 179211485 830044348 139701299 41155541 235759750 388802442 590798327 710480191 374078282 3994817 108700249 276075429 599882763 21966825 271362962 496330634 390851996 238942329 612739641 693594308 189274475 177875000 661291212 592549292 448333535 938551688 963831267 575838664 166515167 138189546 240772115 810881418 207018098 38174564 33445142 785160182 877950513 561605112 537361361 598168737 495143950 426351851 347211817 903687920 467930314 228858964 949272337 830725630 79014230 280560965 754226969 662942185 394428727 854034604 426296336 516033896 804549214 422797172 186942518 800510799 902010036 512819168 876198287 54754500 24710602 947529386 519587574 250034972 723460885 923739319 78725739 690085307 348738058 740056302 139161828 192275338 369682927 507653292 362949451 428064651 244043747 590938914 283391077 236677748 271125401 435153955 39653851 979496379 604876015 708093985 411668718 443038512 495280990 650029947 507614514 701891488 869115837 797191269 351199035 243317902 99996169 84208448 642079161 736433846 71994229 821147963 591972718 304811611 952852159 180857994 67261111 193811794 577031354 918390605 487736696 541732113 457767157 898364050 599942161 916420779 499684898 238751037 639010360 176518680 732692280 259896818 301813099 86840571 470752421 185136347 165583579 737597866 368604162 577233603 286775066 584419270 425715164 123477051 297461532 415683717 836070191 130041357 276404221 178797098 607207210 340684482 718457363 245607276 584161701 425383591 622814661 929054710 384294001 35019822 189004559 642278691 144388367 920094359 652699205 79178467 533327983 551641554 113662720 758608609 636593640 385989011 127090371 188276008 971100416 242199128 802165204 694268578 821090308 431655059 272469179 20102218 656837955 690750067 141410890 555018932 415791561 940555584 700064521 615588582 855826213 738597910 813056000 845323714 804800841 961422818 35353194 201873399 317666371 906818195 820474200 913214304 69085429 701764998 464679102 878377656 353222049 537979120 958465560 402782633 297759268 848607298 343407317 422426312 475394440 394869697 880970037 909020099 738868523 345047596 212524393 25192960 994219898 632777373 357290632 798568062 891625901 894924671 960135713 899699770 146056948 859388154 441005909 925756897 666081620 888305548 665220933 56363583 901513023 393038758 801794009 400694949 498719715 795099022 896774287 895431470 959417677 643501844 693681156 163354613 799511064 123276662 839495583 870587139 392212052 116548341 684296494 716311416 299920439 72325008 133146141 542295544 758753834 82677269 682735297 727437095 659525047 478804768 723504948 206345079 570549126 869726327 604406519 50546941 877581190 707472373 197064987 360573621 593179167 806983965 418061755 340632393 67887758 885996852 777164254 996737158 20261103 521294546 831753519 453278325 847760561 916993311 751341478 538740103 925477112 571365434 963084681 486095755 87552181 371991601 498578588 647145477 315666493 271835581 214280596 862296395 691786282 236649822 826560458 178125246 405296452 129724793 626551938 74739672 87072613 646049845 944464335 997846650 262348735 183900575 663205382 561176733 592719853 374707561 814593520 852055657 759243695 968564015 808477411 726251088 907193561 962357662 23843210 696224585 329073791 748345302 508640109 600794534 252874584 92046539 428611644 993048299 185250253 977238937 428587992 167124750 816032702 215765220 362227493 452141512 681743591 834403178 742045242 78789185 111464102 495589256 559761864 317596436 676844222 761783582 56195617 551592220 469852674 10506292 537272653 410740862 8437678 551738797 969314762 599107731 78881153 716676471 235621097 20493443 729436600 472676584 225887585 520329838 448109210 51372691 286886054 182377094 308230457 319234912 274221447 622274705 249013969 218953638 243317885 906265259 17989605 8531301 340336801 414750534 705091577 970242824 47847746 449846282 952224708 286926727 257463139 10201512 335146331 101500081 514404402 358612122 718411199 370846864 486217456 201991441 336107513 39175744 618051968 617802994 578040180 906768123 124204396 693146909 828374106 331475558 720990079 881150264 399083316 399415845 962586383 371496200 230436879 57593859 568752627 319560563 379010901 869458482 458798342 647165551 701153227 146951156 436262845 750484166 350643896 246363271 364237685 993197846 60345818 745986336 353865098 623379212 286322968 390719671 214314502 824132444 307313105 366531236 551154859 412851507 328125353 687141333 619466410 354841178 285166242 712706158 636364253 496092087 543174782 55486367 753302352 722624010 232859395 717737557 256938048 234586759 737150149 150571948 592873694 155569275 51027451 798894996 900203286 539428479 232269222 405879503 923039279 23020605 651631090 422601880 601262759 406723811 511300487 104563450 666543967 243440075 475128643 152366020 347178613 979557414 269923110 689992459 663534992 33149611 939854719 263063009 535340288 245922287 228744189 285614997 377695124 366729307 986644916 154452074 652623138 339574800 116407406 164296995 40607640 19615512 300693172 677255819 388207654 930795696 292545575 160029342 525130719 310409360 721326374 953257764 190738574 679454288 292497446 16116631 287487739 131452720 72605058 290127043 838621878 615864685 323909207 299160348 615176452 953138121 631444850 249436260 830778627 182459390 437436996 73409723 960591410 686461064 408157642 357600539 388793825 27261454 749891676 961598548 169893963 112262370 116370842 261973231 49370646 605914593 226414167 587241416 539969715 803639065 22447903 114438336 965258701 988031833 272548663 479292203 331076261 407361725 674425408 619583240 220863198 799099471 154988715 427605386 936468991 859413414 695929591 90656280 312082836 249181998 291365510 588850153 835174503 405327876 654991915 797635080 257703304 602178402 884883376 658267700 855676173 722591580 823349772 655781307 732908167 431007549 510605874 361884358 836576117 483505606 19416869 411493886 574828928 90373134 36424930 857312627 252494192 428158193 344188784 983593247 888782150 194088003 982411754 280808852 226843102 736574859 828266071 249688991 258252297 579348204 899541832 908937120 215239746 728938297 362668938 389149732 157185706 533944392 301052691 650503805 802457853 580425939 124128125 906678725 911374444 67687174 77361299 859453017 147094579 519384081 941244963 666320913 500874320 73819312 644162762 613132385 899171873 916150210 478408491 46599768 618481592 185297599 934050236 780725217 187489526 728227515 958982270 254034089 964341782 793496564 62742486 485279996 189995696 313599912 561157657 482585966 495509724 139791214 871777569 281386637 851518280 261821440 596524468 853505093 998375987 753591805 639716920 614589760 68306783 261485167 774715775 667996875 44642709 256854866 483416056 460513564 636213434 312818453 869320568 248212847 563394642 184901217 724632977 317716911 516292929 885461697 98007754 406532512 4872141 951902652 277057939 821679703 465171440 109011199 478293261 961091324 638238645 205465502 620468821 983639060 653936655 560413876 466085741 194694559 815782435 936863559 46015556 40745070 52342642 350890725 488263401 198972327 775678596 446412775 99563220 422564136 237267446 643107060 162721412 51293551 361996564 14647239 612583653 385266175 994115202 425890689 354108601 780907867 421879503 984582494 829875724 486699853 651453640 763350928 924011090 128076067 530785403 374922786 320369730 131165877 378079965 860398206 56989251 809877630 211709641 993774368 482946349 795718319 256854167 622125 798439253 326710704 7766580 219137406 120281507 457498598 633075953 812200276 540689255 939482126 835665881 223583286 543743858 848049286 759693331 743958851 626439134 208475274 609388092 532474252 563687438 588132728 85891574 853303954 923567809 954867735 954823194 452389901 806376258 901225977 825157245 598422846 212871165 49959134 731389074 551913821 336692145 822582581 482935348 128945434 566143795 173371779 157605343 880533732 47599359 384672031 641205846 391268523 671828617 639151314 698158558 389629105 304827282 21045968 872552982 502923596 931549051 699668396 437990690 731902230 700479182 911215431 639821995 389656851 654467176 411965246 596920395 435694314 77641161 428357407 638381683 414038744 900657841 40275164 618462125 580002141 682151202 391374618 864258238 332934058 837517802 973448182 790181991 82591737 160823841 104789911 272940578 850007365 337802520 168892721 274960102 238141133 255210613 491753638 720966118 238880044 192344695 799611097 942140558 544595312 462946005 332862090 543388377 479344518 812838832 152556789 600988528 957600093 676735472 848655358 245274286 900510274 596234965 169463795 966035251 997707908 33879216 160828519 316076332 983290032 795276405 372076059 941606743 514585984 298696544 60117680 561910942 717059039 41700556 289279729 315031811 162055296 755732327 155687816 227043546 14027477 612978052 545049165 819030243 410245643 371575137 868164934 414188059 243903335 487221467 428000365 163979008 503769293 462655815 525683994 235040778 257171287 594689725 280166015 954790919 626182540 980686264 956777034 746095661 78709489 62802850 97261888 131887944 998827210 826020458 384684494 215129014 556732799 17341571 476297069 541687874 740382629 566243752 927862218 595094155 29495681 773879166 179597436 248462812 350341192 176029290 476502727 752192915 290416236 126078169 257255627 628709988 96220328 869051514 729511069 109641812 281592821 822137202 176594090 167271362 859063971 902725168 249252042 400469169 322934713 6564954 311511242 141603984 226209421 768071821 307315866 464279721 950829140 398406335 192866813 134370726 335401857 759346455 485552 845363697 991625290 26561726 627869004 718768721 889771565 403111432 28606634 373818965 159544858 483171210 79165121 871673280 447395902 583122320 997256739 651091540 68038948 845148514 148399714 551314705 335652363 618592980 755091989 475777765 967741795 512145467 627391225 864093558 591069306 195548951 734275091 119464658 954582391 940863342 200176454 530924071 333626006 257956885 987137520 632475723 161679209 635861809 756356447 581630315 709936579 72663925 378589332 467934111 798878562 751217615 483814820 697470520 124807453 181194321 361599027 930964862 602448793 311522436 685435316 935664048 250291520 718061188 145805838 400832018 757376668 756857631 346707306 130617711 99342280 660091582 461689298 537075654 657618771 711011187 856192971 509090231 819921367 73170882 141429959 894251423 73542814 847002282 705969832 360517503 573444901 566758031 7769484 829925405 2665505 623890700 763389179 413303292 167261187 308521514 874316262 137577204 349807656 195859889 794735961 42136816 651315787 534957082 352085866 125279318 588267441 310142005 643266325 776376881 645031631 285043572 805010889 147891083 896152135 809088861 448402834 153511296 171931963 433532998 987340128 638384434 979978355 505098970 313404668 954894032 190340108 36824833 821573055 365187881 265676031 312275984 405637655 68831955 308214417 246009871 920532515 622186614 9819315 392890831 104357764 88755337 6068890 885248518 720355232 191565259 852628419 209386647 555748706 374197216 313115546 5877239 315466176 456842310 950653115 479523638 736177809 65818515 810969488 375894015 652317534 695968952 966338510 553384950 450376268 975587785 253135008 966587513 76950484 31600010 190746160 852903227 711832855 580261575 354110747 826222811 251024082 584152362 595130615 862048620 220755497 411794178 920694967 245616032 543883013 568943790 456377719 177268545 726146588 117101707 506569799 223201886 530861861 194645857 255722149 987357947 898042630 685984002 687113841 279972326 285465277 550163024 55215273 20715081 949582413 543478662 866758236 613707417 94433610 364224061 465610642 855844984 37197117 474269152 604538977 890102874 435745242 886031649 321724141 499652340 793105527 934589749 616979652 410042510 974401055 330545292 920606422 838429700 765137346 152934620 211479514 862239278 207762794 372737988 878779712 415029735 2336022 930261562 370414321 970065618 982420459 367338389 176238533 640509109 933311784 475015187 94263650 704583654 410522081 338412438 517150225 280473705 170109656 481756047 803907972 561507519 247336484 534366743 518038902 379422394 480168995 301401319 450865712 682861548 80903239 894459331 795559097 705438099 728442967 844464018 449008677 375892260 425873629 977124923 56438075 113368334 89110607 318974258 761307444 54794864 501067527 912855164 126179781 484141084 407877699 482530318 853882586 408233973 772757063 533187356 861434238 572825022 660483098 43181953 604863862 690295541 570332271 314343892 770414352 30417815 407495768 278012239 44132036 288642773 693310593 434442297 991819941 373059928 467622812 566026749 294512416 767583272 287102301 587332682 842168143 88541420 677576473 132763556 973186260 325533733 69984188 643305225 218832372 273608865 905019217 610405569 523972298 465358222 717916600 114278999 608490996 675800867 939305661 567248635 898828081 623066389 360624709 23964622 240292313 334288584 521635734 663127634 367892538 538399674 580455565 454131461 545128828 181526959 45887406 629791999 703816766 247569579 317004242 189914654 273223761 892765986 643024801 540679045 386419615 353904407 508402432 549801100 31583839 15679068 994174222 668768422 739210065 272860746 119378354 409446057 523829549 276507978 785465973 329720279 828776678 930675646 708738255 485728316 355265093 275735266 463360859 16849449 595250499 866602313 615411140 535154336 19346186 653367138 288592328 657184824 99022064 565207960 858279875 430785587 773344470 94514720 419507271 32204685 501906536 159449447 928867126 532269084 89229724 488850408 349078158 859091165 450358506 317353263 89130409 251455881 265339016 114323422 151994861 345984074 813865845 318129452 161497875 784729309 181486326 833892614 787123213 792212986 989375469 642612861 468670186 646109253 882207198 180255555 726809294 912534865 603401880 235919328 236227591 257731343 919393166 388023864 808664639 504035088 747018009 67363943 519252479 810036644 9763063 447401861 403665138 209142728 480291031 756509120 273313871 382058548 361871748 463806114 820503602 584626234 742817635 339209739 821354965 984782023 285627934 358143933 68271111 107810003 192622057 543314891 241453622 318523188 58887329 416663560 323322107 696865961 963104637 923923126 561274601 254650323 916546383 442821047 138082776 469113448 469928098 862147762 23037612 808151812 209604892 601801652 775539845 618990646 63375077 266448675 645086743 631561243 759720352 860849066 815789766 781206516 925732498 920734617 131755588 796830833 917245521 387082040 864374647 45185930 745760844 485959635 2716664 432203457 539874897 429241110 341942229 200661936 147194808 748607256 494887410 663067551 989536568 81456926 638139899 436520350 935706753 336932921 997405668 59183334 33626132 476900162 451722037 76508437 531299404 186371389 828162943 194566238 905431214 751306367 4238467 125522526 644220313 483836112 70423705 689688474 489515271 987653016 415905450 568558821 562044090 220872192 376608939 266637913 69319755 556667421 250295443 755438913 583492911 156254347 516790120 266325301 395824996 171334457 885562100 188451637 565998513 280918179 790925156 870248429 602758538 349837882 926777367 225714664 174237690 766881137 136871638 810249201 638191383 774411165 827874226 784380923 966797088 276018051 222943805 327710480 135229600 847661342 688686660 394108629 920361363 735301627 940350064 808618832 148733169 724896099 750787327 822296938 499657209 441609343 701830073 173540272 112994530 826938203 211254807 348910533 925673258 156631157 869794464 234932862 877977526 279903691 714914296 451606919 544658506 560080113 233497207 341709951 906671407 530020160 56706874 406436066 794836390 159601427 356598140 310401456 659125115 122719688 965080335 143007404 59223522 7440783 223889842 415272753 74014622 80918567 544528221 823003897 850562225 947714456 399077161 13946160 395139601 11600458 102378760 639393788 304183641 193287164 381077936 45439101 663686506 194587700 498633971 257157567 902433745 661705450 414663000 737147401 698953029 555388113 642961315 309839158 723465086 975337938 733238849 240784075 913628467 828878400 645910217 3674397 599604964 861611279 323126969 384176087 79661147 145807816 234546030 208387831 439635186 796088551 639334809 50422367 356670258 201617651 452550655 976857406 137868639 238753843 735158086 539042837 223831001 481159284 512941488 725330591 21515283 88207181 349876620 914890526 786238285 912716000 10613895 561348421 500154872 108322180 569683173 219270158 943895434 460386389 142068520 947643448 635169229 394069098 939811694 519581048 773494582 594509412 924036301 835662764 732351470 209220687 905191382 96735534 677219713 353432514 265159062 267253904 180167917 394773101 797881722 375669706 316148112 133217902 92093844 232539289 159858073 697925744 631179435 185156092 819696367 891101991 788436351 481890685 659088286 770009416 925787780 911321214 406110811 757590751 171506610 249485609 905219727 713692251 298943248 823287813 615818690 81175441 193005564 89008748 362595896 354551175 64056741 359777607 612264099 375286013 736610689 215285603 893291536 351943341 18569726 535018438 802834548 427188300 943975698 224209550 753316553 7164008 725107912 993925573 795298830 244022988 975044013 212011317 797079335 148005109 127631163 766518375 314686026 198871408 914241150 482184752 235476116 542534221 260215671 676436147 854207995 218356344 558838186 801546718 768479711 192313418 968786990 430905713 683307839 666983941 478757261 356530238 951088605 177722410 516922762 254709421 608723681 297817275 370503198 161775865 69234317 587658265 446961367 486470874 501700028 894828710 268271153 922226919 13566485 990475099 955192566 683291615 188569866 931984174 663521421 873235675 426343069 264306980 258170659 352572808 742121093 153526212 579846428 937129696 659291397 16301568 152196389 390309142 41795422 588154841 943878078 907406324 64443568 128649609 656186763 354765608 760998748 372636407 435847534 165171221 688410112 547735345 369896720 1393839 49546658 184103173 196759357 620930732 244574570 667806948 778701496 763514288 906766127 601034523 190904491 665367218 639820416 752403357 633531085 650306663 314688710 717782712 506126792 685571019 333027316 237021650 213518321 161082919 506910281 1636301 602915532 967369706 280844891 769131512 6578015 980675651 20272970 776796364 713025430 282160674 622172345 611834311 96958685 854786680 83447127 394218339 795737169 915250205 952121780 624385839 124989440 105905782 403315172 123736616 951998126 184676388 412872379 288592240 111265330 918299593 77837414 682881100 88704628 939493061 110562772 708231658 923698185 657415527 687120333 517069247 357592528 179938591 430241762 864521678 716888128 204868138 97116113 320562970 900315280 914774447 899113973 969271700 209749033 937881171 402362903 174114483 908428871 991685365 23999421 356809926 9152777 67907247 805843625 717714720 440397004 746529653 235949417 828616154 994737853 887444314 675306468 713398206 551249541 566360851 477913714 511335519 333627116 252654005 499222124 387021876 626375414 902933365 974295247 588187861 6370309 124869272 200628221 578093887 433902718 186138590 865606121 731729328 926764620 739260116 391900277 309760664 364488563 171855488 294836019 940475485 576178444 261030022 789230032 256992213 261555481 648733919 466053912 710108339 53218571 152155586 943820546 192568091 151091133 821620806 74918464 403959832 462899827 287095878 506731627 567874608 457650632 807977885 972973938 526791511 601015198 923717852 517131495 209720651 463779396 540271542 118375234 603785278 564378376 783558426 948985947 838821940 887660478 775356683 194160 664304121 337020547 457165605 53080931 895402136 990487524 216901127 441525974 390171211 715358008 36679127 168446978 27817043 121974056 489112430 21018475 898955516 767793595 527092112 191084761 366908437 933394415 379667906 380586111 783580289 71544887 117870441 138935474 278859965 670449450 256008465 789057056 28358840 31767525 893892287 374239577 447736028 251353834 592148501 585372876 210549304 611420263 207068261 293562263 492623993 700141417 552979271 722735818 919225631 733084341 158022300 390202812 340967517 9929042 841219042 745141214 596011601 123448905 865038939 321684177 296595242 975057317 898671122 69118367 438920953 38626131 57151660 985994193 667613570 422640246 130037359 956727149 138176560 518108342 764053162 631458883 166943929 455351646 718701007 113805528 607805455 182907334 835031266 448465611 752568410 863355299 857058564 740447674 641403341 578055531 109307487 644758068 451280798 981218083 267446820 693307690 227972735 381521945 686422051 763492338 135874042 285689904 918997314 116822558 521210711 233811153 592311190 958122946 548177574 340636882 480178039 703366261 582573765 930658224 839277646 891497890 629591282 56769786 263854893 929728101 398589103 765719347 669841488 671694028 771388251 212233419 152580094 726294079 866150704 973030749 720218821 766971086 841932961 546491392 23157955 771850329 118781820 538837396 783515421 279808584 113494455 368747895 493650652 838805376 233351938 857220514 510712596 957228647 516030390 406623681 959633231 931393965 290847378 31616175 391594698 640681914 225255615 428471570 310451226 978765329 959519446 572574789 564779255 803428367 79686143 866275328 141025214 660819589 944054920 495617100 444876381 144154953 239149278 781573656 570795858 122464069 440337930 220770644 799283440 963819234 180135659 117182673 657594701 867694571 663169840 433429020 31408142 779930458 792618526 927706159 294645162 325612875 358266305 989176581 760226126 53260116 608368028 731820028 298718112 118385972 384574856 859085873 156567975 867615785 201386279 444952658 706785530 320475030 787955443 139055396 853118770 670988582 764325435 977495311 113020949 343330722 683408512 644302842 515682422 190663306 831759218 159234452 905323674 741886929 130675333 874634917 493453617 560427835 37035992 924699338 269372382 396105589 528513300 768487359 880211577 365175276 356434987 726606511 135037196 168938313 139848565 452162422 418470358 893885886 972460993 530357351 270134106 569985069 932502916 263466648 644260823 848335140 678114167 714880971 225623958 961476735 117396587 613453593 806135993 515838526 824653132 311283341 849449979 968219432 899214083 600150118 831255732 670747395 941611613 971860060 887715149 606092491 682576090 270931253 598664372 486898364 24921356 99718745 996911278 909380984 928294627 22406457 911818265 214042795 817680751 311109110 321891492 951522904 58195015 345196935 373201303 871412104 355295814 751420961 103098490 111794205 943310925 260590008 805452553 874534410 969935084 32164150 843940732 251387162 111849911 75382766 781379969 612883016 322796931 720915478 755934897 31285453 287000449 773805583 377547624 493914006 343588776 426853018 848627985 116915732 599012820 529292022 776186528 233047946 604520989 924370930 546767156 175554983 865591388 761332181 147968975 799317755 2831474 313992492 487158658 73020 805749261 454801062 860249096 870703058 331518932 204089901 912825685 217106423 414747553 377245323 490737941 371370611 461386392 155998716 588641660 893920136 610527303 76362314 71046106 124388653 577847218 128386790 98044762 341614571 152171918 542265417 319478026 292363117 419430887 135576577 694864080 713303455 968622859 785617230 981417302 805266434 260800023 558651008 564312577 626418884 445939609 155614490 945473528 298368771 415791310 727285812 45060254 350481683 760138338 411252649 992306514 408277102 282234745 826924178 399394721 188413152 143248077 252440021 188911690 319408635 8789821 955611953 713610038 533436238 416383783 494130490 750241815 260238440 15802157 942580767 947296196 308328039 173390310 128476395 628321170 292642140 173685690 220791444 946982403 730930537 151372536 962542077 676123252 162432270 448682500 182837409 363026158 998759588 73188512 884813960 198837254 546255193 94098792 738698382 22937008 38194588 228450813 334054451 237675683 702685566 713612992 642076440 600468669 694919512 247152281 448689302 898582198 479451785 329641485 279648568 578581804 266799406 794658450 115541693 570406598 828345731 580333650 850468771 279959892 994665162 236988604 387525386 77780823 26882910 323484126 999179069 158345969 92227114 414843063 400076399 712519839 26317963 767499185 38960791 502844044 906447963 648624101 212663196 571211361 847275127 268718488 314068997 295085640 676821894 860662891 371911361 22628289 879825978 657596514 155409931 168219563 210964581 920787679 392125759 926953762 34625531 292530273 297658942 856447343 409744667 185923520 734533098 195765221 115666230 152622911 21754148 908893308 500746047 433517205 54947326 640103889 223491831 180093549 74427569 760967218 677834486 825169501 965427071 334786926 820047565 461455176 598685376 870837262 974779152 459434785 899224632 461920658 11883568 164279343 525135575 306655631 903763036 564370480 167700486 290951694 594108320 796665854 590147540 935693009 15066574 256914915 990177077 20959446 282928751 892425306 310843687 878520903 771889226 583923000 932352300 197568937 806423888 229380760 509857748 228850011 361807912 815676435 956162321 814972458 373743637 313233087 16644090 675268721 798812204 275183376 716962971 829031928 820110633 138798564 165329146 785056739 308790550 403403016 892049980 61003620 496180413 741899147 546573132 82639335 568530710 977833188 397163899 121831735 750476274 12399881 82195268 323308325 743423666 174213545 513306318 649158114 879824597 413128903 546496345 673148045 44681776 597130724 117402829 713530561 64338873 584469540 311769154 694957184 669879132 696843058 798525594 995921669 263564609 680248454 595745122 973210659 469767981 765200725 554372366 836074371 258785392 173632964 432924046 814443258 504302222 489254829 250779502 858972698 749356214 806009023 918603252 465720555 403410010 263823757 650680380 944568274 215498525 60959312 262491220 461459575 304291865 587634251 270096183 711748980 272074125 69973495 842513524 766704180 247725123 667831695 366405424 228039688 566303787 496183427 701780430 39771524 744816169 245581201 443806891 234420810 176602073 544652479 457201430 940166569 957825247 456311279 770666473 806653549 838473430 220206051 237474487 501040912 250153470 329177592 666554682 797831045 327610172 452041436 698240367 829317584 150014520 468855189 379772830 629216640 579108373 686072617 884042813 353837501 524747782 278634815 240408055 454524119 807042941 977387545 446840042 174534824 584679794 274848798 507501200 525385775 266499456 228600843 385345477 395744543 635385709 852922828 641812936 802946665 208392625 69416167 453708657 791611732 665953069 999447610 950474684 912226874 164513204 64701117 459475287 53330278 7730136 637883390 670489014 755006632 117268360 49445069 58408578 622369719 965121145 238933314 92388856 552098275 947515925 911674638 493843941 281070145 756051528 710644563 372839515 527674741 460824689 271653640 519226610 398415408 269276417 954519896 847484882 251213388 565011853 955170828 937996958 721595426 696563757 356708094 916284279 972163660 115349221 795254450 651346284 134765155 331817397 853828395 454449513 263527701 560507417 261500152 719291768 36163962 922362752 554113170 766732784 797997399 55699823 801766899 229485316 233780939 267942501 336517509 842206585 399296344 996652693 102382507 784396758 875547979 850898958 107533219 304427130 877175491 311310204 672199062 910675624 351572475 714921509 844114173 72970252 57887288 66108334 276513446 190834488 698311830 349900776 749595990 961025965 522232514 706243307 179800724 113576661 206337918 613427131 630109493 924546174 69656106 684988260 347397777 726125625 43976970 365576675 574540419 193829176 489171297 995035060 303982773 470898772 985228534 969343826 344131185 73722010 837692423 252783867 432372897 241949677 178396432 175323694 564500003 942575435 968252887 321678310 90851843 275567848 369357250 273441911 312596638 970486813 60715889 296772355 170131940 742659280 432683723 83012414 746233019 8219960 505873610 237790269 979682493 929736078 749468184 320368386 728547378 999590283 872994100 559716512 196136601 884570693 801048168 503707755 546430149 984195273 755783547 637033886 367908536 854532777 252144205 888162994 854423257 825045754 396816127 87998158 410372248 143920455 290520036 802462676 354277375 295552032 74045574 190007039 376884998 745939848 576352871 154091515 781382952 597830837 447318002 231979180 472537637 110650794 470101381 485382557 213555814 6613307 673192612 905944033 481772211 702512170 385984246 299062426 728105720 235695213 157173475 514336466 355815343 965473936 872562756 872804577 984015686 490057481 863912275 234873730 146741546 809191402 50262053 876851958 796507338 872437390 722776673 94996365 128415062 495029997 611083884 549444563 477054046 841477157 722781691 386324088 269292842 306162976 762091771 799144318 782101939 914291580 590302030 510366381 395979123 823217408 749540924 411090850 787611950 506210771 484483753 695257577 870238332 399739328 951704168 40697145 433059976 445482431 45071746 891677925 653439009 930235911 395524436 824337991 949060763 71733746 98032220 30254764 390596958 920093545 159728078 867826655 789469537 517686581 310488870 851175604 156026063 687773704 727039796 267318752 861984394 597486263 956917858 60876411 418874162 848592021 353438722 263769277 168809418 468634298 6700763 390716514 526494482 27661306 721147885 526993903 628565499 937584213 967075830 695637399 918458530 820370586 311968304 558036790 373880426 998944487 25877302 383204596 40044485 734883680 210415488 156992363 943002773 342636509 652987032 247828859 862629223 116917419 312188972 670592331 253480740 613078720 908522401 818962793 595773827 316991845 210406861 617674324 4194543 699878587 847673060 226536849 602844063 263105114 322976259 675807008 421520522 544011356 818961623 889981344 625190285 895474437 484227066 433199665 348859491 856962571 515923818 61894678 788945119 341800932 928076838 497233138 609669686 113560527 446109514 538520324 247802875 570280354 96233558 976110183 79310998 537996500 253905064 477934231 572540556 507598106 916150103 939246891 900587711 4814153 57304673 222628003 643932106 373504045 894023822 447687374 316436667 472146449 17214842 772241803 37861110 52126027 651268591 191087984 562754467 682092027 276280592 565188512 247924964 312689917 107022394 940493397 335846485 786518987 187833870 311899501 296200309 330766888 162443977 891369277 783352808 932917405 814666583 345048349 849381133 907967275 616600010 911311898 5828536 644718918 271164912 804696947 418620508 15214301 311196053 192804460 159254960 516233599 575266920 106128890 866487728 332142279 64308403 764458833 954012711 495698817 574740905 525399210 516089900 217929218 847846399 244297620 595273933 700055973 539306881 316064541 528446016 861614092 945858859 965605548 914953725 458549563 835304697 17059831 228066320 927451959 554244439 94144763 969070192 609086680 914402018 908925178 817997620 233176001 558920281 99633364 704056269 844282186 121001308 265598849 527234995 592493274 429996369 866878772 103848651 166010512 332800214 759584861 417446100 494670046 323528476 940350385 998888953 898045638 809269999 847223867 550330734 876747395 126479846 594179291 807385826 897223450 669679181 813013688 113759854 248113944 303958344 183567997 405908186 776248231 521384263 154526977 153667802 309685512 832880946 215437171 742028604 979860567 226652587 494303444 65164490 605013979 878348564 264465127 859285878 729492641 822257115 662472000 655651120 535051571 488054680 411345486 788783021 127636858 522955508 760648284 235403586 552139725 333603446 637275215 46904124 505359478 412436210 702876648 639690886 366403320 407120216 677874192 8909872 875313694 534341705 460455564 751548430 461981780 693482095 84617639 439540733 47001243 962890600 705709179 354473675 549075534 347964553 199340642 131127057 563274031 760612795 478924762 399301028 154782290 426987411 12516274 385256294 327382575 88132748 179009930 16466982 651378143 713019002 289233750 866836130 342875495 380396606 861920608 787989465 247269067 997020160 172570213 143826108 271731324 767518965 730593870 48158900 980827382 789323765 507297454 527113467 617349573 353977647 604382231 168169973 836723519 238641127 636057162 820574560 629957369 569230475 656573771 750141098 449936124 672669239 954643377 447171929 628763868 235176968 741684932 222807147 448174961 858884323 515288132 687001725 589366998 826919898 328158400 258566479 187860291 798541666 931732188 814566775 960959634 670445721 196500879 584512163 960158513 471291725 961579186 471526305 437375172 34838706 138165020 669351339 843005654 10498615 929421597 128011414 479653232 464973658 944883610 44598210 72647794 712460598 390769927 994171654 289668352 238231783 98997657 415891506 343662419 826791673 983781591 154465871 891719048 439755218 469725569 861514386 776339434 238775682 88545261 137302661 554483489 716542436 901476870 169368795 980714927 29341535 493113090 400351632 910902121 375374834 176200968 412745322 519692235 201794645 643069057 404615787 524170578 902466087 315534585 206792929 113670642 278725845 271456005 493934217 109239926 157391445 874180786 787375179 744638461 865873526 79192572 922485469 612879042 952271673 776127662 874295797 458669000 574260738 595620257 601733748 503553603 411349469 983531875 612122647 972455140 624694164 389377751 324280451 407708602 732739861 214823999 888632377 622511448 127554426 70100691 78318871 139094417 97260252 669426112 498586680 542629220 486606271 53937930 632606572 714172860 525362911 750464557 650217972 671941177 731514758 35019200 295797904 845193562 586466264 450778397 215977403 935903681 237649204 146729187 871254556 296531769 71092586 669613589 465080120 869303252 838239413 460675228 135480975 858341338 479672027 860854895 338488204 721408087 915595937 577981932 396647027 4123022 428307293 344000778 251635344 863684131 592608405 486261603 636382701 901091596 859555900 427996767 579956948 405839311 550006375 7643196 220015098 697327398 851792519 580420366 89517768 868776424 889788399 34850772 169832029 856772182 563460865 161969488 869840043 424871980 980765440 733186916 722990501 966316211 733984825 836263900 150070089 889051413 14129230 165552770 464556310 424118353 506650104 181050827 350688689 735014762 670689686 496255012 258876212 447978721 589868839 789403792 554062183 961584067 214101556 537802711 890286805 750822131 442233323 636111613 761142051 877241535 361646543 521574095 280429045 765752186 801887939 504830855 993974241 569606912 406691581 381251492 769234332 501673012 841293263 632542583 405105628 801767302 80857760 223962348 139355309 219800627 642299875 33735468 611351436 562499862 742582631 933350019 120430870 303044853 240319587 864719518 296440493 982485487 990879285 59828942 777553977 113682118 349533326 695954782 166943295 84599475 115502773 790860380 844324897 295453663 438457795 299142703 112049806 523838231 559305514 297600871 543815180 514773542 269323254 280808579 666840824 739152923 481854395 447653377 835630733 858870602 507564807 944880667 599177485 454499052 720973468 746335924 162881085 423677106 337352000 350400369 361310099 131054701 862903238 816171830 18635529 373960362 277359963 162050574 870611216 291878854 955002932 307703890 302385010 943070356 672136387 451522963 475130788 391909980 230559725 683504999 320398770 407029680 613750540 920907324 88445088 327209156 260489402 233976918 35217635 143680910 837292117 681048096 540204530 205223087 697273186 234647251 918021394 409531985 272724175 791769664 602835631 872769772 42239347 800650578 805764928 369666053 410414291 610132971 785377662 682083064 673447401 664928637 583030179 528793207 423959264 986342702 841326849 60515104 587727751 372972375 82089619 819931362 671683469 325148556 288100576 83495664 768310707 808382231 332906217 139185008 71913248 590595294 413932702 938590673 43111096 418416646 886677952 694863951 238384087 494673036 10091217 925709766 901915522 133626156 368671735 628838652 560257014 527109182 75612969 721888349 606342508 594419862 392746913 247293035 577995534 706491322 165161643 184355377 453138572 694250821 822758365 599696537 26817741 167054258 179724559 203912292 263014862 811433575 714979627 181451973 672781704 82767386 903879001 523179198 574535910 550263608 485303712 939826265 283970616 785679608 282229839 221482631 251349041 741527855 377189728 145235332 853918023 41936845 694413496 459124624 371483155 831384032 695054661 810580546 888576670 597299102 739443533 355931513 703775159 348992457 269948391 704877875 289292511 237959967 116674179 761194521 940548823 277818945 971724232 937050713 989718095 579641663 215704734 543889495 750756972 481467263 79524935 338941302 857154305 433101226 589905938 374464806 355465319 595237375 363105514 134830709 659138399 745659811 299373661 31125632 18567002 71159646 19759723 831652739 694398657 21846012 564439074 330531085 180254353 325175332 258134555 330249752 285382285 291849154 570354332 356139922 462812687 226453611 501569918 652209280 515875837 539963033 37203051 522515947 525364298 537678656 517574675 12479551 539442386 47159314 321215075 745607472 137657081 731908101 560168255 248312152 897075357 271590770 763764659 221477707 920815551 284178607 473155734 102500128 139967192 687329468 695176314 833189784 958931096 411948266 906413678 567256047 921080970 556242170 895357203 57587049 396325465 706446413 356927844 766723538 632051520 368281621 334958184 496059134 652460106 888334776 90802141 701101308 208926688 341298049 83514839 795177929 824640745 563943102 252422313 821586489 959658973 499827780 328271420 368937717 19239263 612703132 195364239 158329184 544424348 943369085 972833272 772732056 418875863 771245623 930922584 851967224 250841710 135204725 849811261 671418679 245577807 786228662 418103250 959746347 960229129 519760369 536171956 698639884 137218961 891473691 331971651 871672327 912231007 642643326 250924505 560749464 613685313 614009848 390074044 974163428 343234213 377547911 237319634 778879610 854351691 473255858 308971762 281127851 761315582 565332241 222814076 19020489 22494719 259927789 41737642 616547917 521147310 78023944 983385061 539707449 682718204 295669237 158608771 871063116 263449294 483865077 298852141 419488803 760636805 262870045 256028059 197269432 829958703 668466359 29683929 286601130 474004482 986477632 86281796 864606097 991281736 742953965 147365813 368481312 256040442 259805300 326031309 933309542 352828827 447107098 557298193 339559913 374101499 467859526 235299095 967178694 9928891 923231641 888879818 929380862 889605282 958820744 823551438 239008842 596158919 7908330 943247829 170441932 469475827 385508301 572223540 141772360 238923307 596961356 854027586 551885180 68823833 46323408 343587181 635901744 148981696 785804306 657665401 565676287 828168357 668290666 676270120 360435768 365011833 318423396 510151612 985283642 281181950 557613995 633272440 985606079 937806048 81073928 275926290 430894003 187807827 42196286 116231365 576203086 76043695 544866556 138354713 325236141 310208724 796270241 304732419 650829779 43394091 320076339 914726650 167245533 810670844 219218012 65154084 672049061 414012155 158642231 917422660 77888911 662264549 438328557 487365631 195445796 480385087 636106053 637532814 9695145 858961241 449744716 48055324 119256101 123749441 752203476 862466018 177921208 430575124 850527309 902386244 548219206 652655512 884498957 582683472 710007000 73259078 862705775 737817968 161828717 395860436 553635316 582085149 648933526 643700469 723250181 913157104 113261348 565457396 642625963 520652242 46141522 137097750 604597199 304096040 674308654 470096310 54950891 435209044 465645152 239567689 808194702 901243267 296331641 262237279 427089197 154051886 550411327 758029846 747146624 227876800 373496246 99399441 314669181 419759522 382782311 935912674 279558447 697476976 510999186 340156792 645036940 299493721 541221807 975755890 663809660 381214715 619479445 157034351 238123125 712106805 878904859 457240970 765374764 354633459 342230156 206115435 946571451 713621908 494015834 277611059 294795784 541107946 934557345 598958343 504931384 58271023 234303046 201557066 109472540 913118236 657972189 888753070 863556556 914411497 682022501 376538617 74466890 512608317 608342810 678719972 572628149 344364775 719888828 594257901 219386963 245983041 642800396 104440667 422639818 92851742 863930084 853571554 326676738 280791483 4205010 405619876 865445498 61723011 369417610 719819983 275940131 830439503 65855510 128753981 595037651 633311609 596412808 130535636 835162478 543688493 593279928 570189895 702981504 665989393 736417760 666118308 338327700 307414664 772819273 377434966 599484 649520531 762519010 328978928 537364560 44055764 347581010 685915529 632371625 568413426 585936965 570568689 50665450 179843227 158939107 571304234 345467146 555335065 614583265 177465159 163480534 942008515 992016366 976856902 638209452 630746603 672199347 109183834 606120727 969396967 792414199 334629997 250563278 759675051 756993548 409836812 562668289 822863613 507365060 989571661 430719091 829632286 120250458 181619298 798251051 266462175 681253034 401057919 423472313 903306963 65477689 50327381 555035835 626100237 560755005 352078796 565723712 624934160 820810367 139280872 668471938 434110524 386648334 127417284 503169601 229849324 690803787 807449854 23985522 203015133 150119077 135061870 900144566 170207879 40455755 776322151 815929659 315352358 526400331 971599667 741619197 353520580 566791857 301842358 253431537 598051619 481731088 717118097 672113594 760030560 116028884 814394694 341878614 491938554 993322615 783294097 951118030 494001550 190468218 388809456 765032398 362246349 613910426 436531846 616150113 206051045 292499901 709069588 178793148 348080550 174128393 778954066 614181878 384467813 697878826 865921592 575795608 884849691 731636967 189931627 668469782 469340465 837640313 192516973 564843192 392244466 483623308 175554470 669092143 789004563 230884350 106961703 681255981 316189858 855063580 341229905 175924937 690070108 36853608 562616281 800396330 925539683 111530202 709106351 7481459 462302369 715001029 724862844 887431379 334069063 357221758 32086828 975586810 372203192 289492128 158688002 862211266 921742449 349620820 667031716 178759215 676773227 380652489 632914383 503664047 266918388 809898639 945310172 56775604 453256961 61007415 749274651 249975463 487719550 115583988 414058672 529677735 435882599 589805891 420565784 471858393 352098537 561276693 505347622 411676213 577361287 160728298 993993764 350419839 301081034 320071642 233117096 141975681 135565198 938741903 509359337 939749402 359295911 286555133 953177572 552181794 226477690 250450773 512661989 88890946 976005179 266249212 996892510 230840259 198486038 538269424 79550396 166111263 39168752 449592804 17726740 133761982 874210564 123181916 149934817 544465328 799227702 553371433 702221839 621030774 674672441 595285972 896824915 160229838 520125277 851843650 505329439 62921574 354275315 46592693 951637135 287771915 859881434 86994549 865615362 86226426 856529997 115110468 441001725 323211761 93731323 315034197 200143286 43827407 388823138 257865829 159502221 937956876 955621511 540954525 538699653 945718867 187672481 474320596 206264117 689191043 661517245 764187746 628264516 472803898 803960320 987871961 214694727 924302065 996143685 259805877 794281159 439034349 36426230 364279358 553445103 520889161 928390756 866170098 129440334 735845758 483709318 795365577 418670824 429144233 395645236 583312873 254602060 463714181 510828418 678827271 781204064 174975421 538424144 360895984 25070397 265649313 392983706 872714077 397263816 162816623 358080585 237583369 506912928 214294207 13967555 879482196 858118238 922663110 70350744 554017560 310739487 598324403 334674970 500157025 43341295 729613485 634305272 83611688 846542735 517342046 463754378 32110152 220730272 650399115 727547957 126039352 89974293 172683655 178536910 854725820 57924747 865179052 347367370 886374983 796914179 621477808 511092565 453343353 528417707 998758101 592271000 962872294 751894244 878078575 874502391 933407551 147233746 638983282 995548911 534149065 177310107 959785391 468641885 534474438 364240619 424499296 50523416 124015081 165102878 386636738 936106628 215651629 401676963 134276753 828993076 643153558 911464395 610690322 307230825 235709630 129556206 342944946 310124453 393995406 438740396 258729352 631067784 797763956 743055959 275745060 824635165 489588017 637502368 291437290 895966107 768789566 25121888 243201974 301062420 932490017 918564720 103672374 992303877 805373629 668964916 16646655 668483775 225166642 132433808 588873900 947138243 188358083 210672728 807974822 357163416 183411138 962801371 317992853 658939295 929807955 525123047 956998075 963745856 706035275 487796733 562657249 32966837 571382936 321470867 320459925 686419199 928351322 685667065 378002065 842691554 244531903 932351862 308010346 732729143 652960913 160847562 171132641 412362030 494819347 505446359 865906186 19338160 518932466 842694565 521584186 874383471 207670496 820642446 767651390 553752906 167631147 107238046 605319255 566406974 472180429 588807453 269529582 820168328 344810314 862390035 877799655 64759861 182091739 698034491 714977941 919515243 840660054 906079225 667877546 906854860 910816560 983311214 493360165 627043237 685868050 40640867 412683910 632915176 819986133 454052949 258986278 434836060 611543405 728917668 326275478 175119891 403454105 526133790 922242410 463111877 179543417 935241562 793784487 245172906 611510972 812234947 472672930 668580870 383865937 468309724 342262366 909146925 250760168 385270004 400477221 217413061 117032235 232184700 787424299 671029324 684678290 827609907 308656107 892948212 622226945 984470996 526800105 790462999 745212563 608185441 645579298 83301718 906564594 239618143 924648844 842140402 973953625 255634932 174496848 375195173 810807705 556140198 166610761 964058341 254927280 481699548 112839430 76616928 28861076 66267075 968193882 177290344 350869253 862433735 33254913 727677857 648736829 851151409 613419231 63218597 809816917 18686896 145692646 716105456 945801567 806288649 767940642 257688758 819405033 254786808 378449419 263451503 882870886 956003704 645392665 357277625 647959284 901897927 609048097 220822586 104174676 9234764 619432185 416947479 80919190 432458555 699163086 198962697 559439780 426508494 279067800 617882129 260972303 979886704 492216631 128157654 576340277 658358015 224054787 196143714 448505756 58001089 807099772 579752406 329201774 928494985 210011542 215792953 102119627 94880065 382783811 282474702 232759558 617192431 692333793 849846512 550290563 181194635 472110182 963827480 502914682 771608064 371387038 55765553 662580490 907366730 399972506 789676126 816857441 284865928 165902755 870709981 332456469 412582676 121139055 100977407 279201373 596867936 55227162 183187920 973488636 14173325 845079004 574315783 622454553 807124377 85236977 284612245 27843416 84433665 795228357 796225649 794943013 651347583 476602433 182550992 837133715 566352739 314599522 919449978 683665994 75471043 894300961 474137894 743261869 459002866 68023825 903870650 99444296 288669262 581079055 175204074 589332089 375581522 527072676 771494849 213102636 763621083 962179455 432756792 144340682 416045805 427696630 974417572 571067215 856722941 272677792 584880286 4943799 562058182 288778879 743707337 359161608 377863945 524404148 695282688 443858227 43141214 178132363 220373043 51669986 637020730 825697172 977618260 780929733 825555868 57849187 996940852 472577240 637576184 832008226 265121551 52191477 248033310 15299930 521732662 906187517 347919643 526324419 518875326 354264686 454018043 550611059 654112293 986983983 283211983 235370332 139903146 334640128 222238023 836437031 310599656 852122810 321076342 514813714 965709853 224930739 489366864 98532024 61338579 287131284 864333035 202330375 834613235 869479552 621798782 365716628 470147228 851690341 279220777 921436496 927485829 199764106 179176207 138857532 553177050 566027742 672016126 883295727 288861466 161974081 326655441 400137330 484389976 348192976 97671742 754848295 553997905 620636657 703894289 740246281 231141599 804870707 487360624 998945307 756521456 245593897 722569512 900089572 715314999 755738121 411137727 673542701 802528916 11246197 914230130 740608126 752299152 111610097 866538903 943442842 43365179 112430774 574857270 76024972 309845770 483734640 967222135 603266761 343760749 298549994 399303621 995082894 859331991 29662706 29820477 204209545 660336664 207732895 582037835 21858723 444688334 821977296 585467296 489280155 291615533 82975054 342261471 11801234 33041950 188624201 625596119 386773341 53609909 640872017 549911797 554258241 61385974 585845705 24194380 444032275 867589331 388892745 764468289 69432804 731504934 464143627 943404503 779941984 824393374 664765949 960276557 940054524 373016778 142198937 235355782 419254934 18199295 105902124 269422043 128607447 834443174 813790491 67698761 734372737 914413599 707948562 684466806 281904334 537684478 220015990 539273139 467598644 388072514 95478290 705961957 891611494 220314634 314184048 626943235 380617861 340888254 809862838 707985926 43424740 990243683 511557000 478374329 875604259 542486904 874037239 850621952 91143105 388295799 572297452 215441170 389067158 39424888 263066261 806448646 937989520 179749021 753654675 983187722 473912664 975489951 199438532 410441134 867765241 635043880 331506562 75100281 768488746 31934335 58107100 171868943 451568012 171456935 845312128 439613530 29456005 391176741 808701671 645980968 890273184 7148721 356505168 853747941 483624170 370133509 919362419 523806861 486849335 599422457 620805132 166854591 605722439 432172038 645054911 46666574 520932974 881748361 201764602 37228217 655841756 866532131 684348087 484991283 860478340 74208020 131187281 877447798 711441676 539229058 680155800 350640483 328436747 881440691 48939997 771119731 415183662 192836833 230559288 417385076 638964583 18266523 65161286 984746173 794239326 548776672 334323043 388704781 618520632 703244549 9363542 853587234 213261893 150208695 565352782 280564128 499294581 468599333 847978300 864893248 387801279 489752522 539238130 872020998 124521945 597490984 414660895 179124053 716777385 445714109 570368962 882184605 133435246 899245575 50120327 156979193 574743802 857845282 910639487 670917214 50099559 552192866 254810862 797063682 377256821 902132979 939184333 581334890 418086742 882138889 327001126 156763241 991686316 418424441 536679943 112061850 799904796 396593857 665224305 949434704 92619209 379182507 304576596 500930399 134777777 519800923 355071634 346346944 327390737 727859543 114372641 603346452 877818488 245433118 315725433 720629209 430865608 681887898 696606268 129186366 955132947 342518889 204163490 905929192 574544651 189211563 292805803 889694091 599040388 845557137 239983287 894948781 712844634 766489388 251973781 576734973 632707774 706766515 393968531 938082896 962254401 660256649 586001333 187467157 934373492 333546064 462504623 867473671 868787156 905603223 683191410 194814537 264882406 797735934 226927708 105575296 712975210 238057409 403233330 765701435 323108394 661833345 449612099 275282888 661715877 800737146 678590569 866336826 439162475 781975361 517220817 620895328 945919685 799973616 474310640 213238321 700992442 177981037 850152190 972046807 620496796 946170270 951150923 322118316 457420037 15782122 45675029 151260916 737404612 817168029 708825859 516413015 989281874 103545178 950208448 367363255 691983606 73631972 288899905 845892529 498470221 895908989 352331570 725793223 207609972 599059381 902214873 414504180 896688319 309869079 679026975 924740250 850453623 644739443 524209339 916232165 13477562 417472327 797591483 317021716 552999031 842754869 966835303 935665805 611479707 701652206 400791407 451815525 297167307 383054743 775019767 669423328 854359272 329262994 878200622 240107941 810747422 912604066 242764011 807079366 381036338 121144746 307218803 978697613 454287469 264820418 172439351 876804649 520250610 569041788 565383472 689855910 302495128 719814099 710846132 732116343 876444925 570901589 823746106 474890420 559244021 449260058 588085258 737256238 68365592 437941535 978037790 85338838 143377159 30848576 302370894 341411902 679827345 260322113 65846589 45230384 443078865 665075244 710206222 162175478 355667327 195832311 513423166 92235023 264947168 427631860 491186232 836541811 360534244 482548077 491442089 700760511 765397154 736383552 802892054 801693470 972636366 146875696 67776382 61845548 188854622 841739651 168605452 985236111 361779781 744795933 381295962 747512213 797948720 208735773 111876436 447735218 191973588 694751429 762429988 385501336 348636491 802494079 286816178 648506104 174016379 38703973 273730159 276902478 738533386 127422474 157315562 973727994 439527265 921722923 610696109 613102685 808458922 941359427 626077469 300163095 683313194 302954877 2578007 878988273 765598340 238702590 648364181 664280892 673967291 887457800 2881552 651339029 739218088 722972704 617315473 445158381 877071653 102130910 297447359 700282474 338125707 206311746 2383252 829508061 5384200 49449925 868884836 506922661 388061140 992009596 33591351 347961608 796162739 8387426 805187876 155845534 807898552 66941784 901625061 896838090 210310057 943938242 795376499 64663743 406353210 343013312 609076823 623037062 743213366 840363344 38888911 64025243 546033074 410540727 470619724 170656850 563479323 633627544 548471403 881130726 984771211 315363185 965341036 446038954 971137799 175635956 77196576 534623018 680442712 385657026 12195929 691785721 839878378 398645629 730706489 220175028 592335838 25127979 67894968 496850927 373870316 786253176 831049608 506080377 926731465 471508266 503384629 245901205 316431320 261414150 551822685 3733243 485535016 832356980 301880728 789199500 39050545 411053739 794323055 468909849 526732754 509486412 963436060 932674564 230736114 32609998 230742290 442703081 104871959 904856102 14634876 890754242 827450871 552650023 866780976 105813019 237977761 703234874 890126726 366012253 485548715 137705894 711833446 214574376 890784074 869443475 418782641 95698803 217093316 923295271 776389738 493538262 14086989 981884434 304557246 288241001 318617880 782877990 214340667 508991925 960606265 167054269 842795368 856655907 988789156 151184859 418976752 28019706 153047478 527470486 133372828 733636588 30082435 949693650 465432599 443742799 402931349 710811424 364107392 130087269 793704826 964512264 845828498 297264528 795803093 696509894 905246470 485244966 290940850 378188412 355822279 903226 594865790 975115578 818399101 625141749 356916850 237100996 637467682 87969406 675709292 225821115 788744331 107351407 834573405 625364903 617499352 655926736 500428752 583858429 323015827 715835437 451940247 306652576 298673760 421821880 722670855 762587327 177069317 198703837 552300606 167638418 853678014 868575684 574745215 743567039 395823219 676563751 29235509 361976968 478428133 895804742 241547339 434420354 220017022 912756544 511260594 572109834 437700333 325829549 436285455 183941500 986346203 607884077 608941921 638123865 442959932 344225977 640938446 825375738 620468195 268125026 680982474 323925905 341433931 895213156 66203160 165967074 373204101 513742349 471249844 758094359 811178562 611497787 205982231 842649380 913476870 524123621 579226616 910034429 193691055 14187214 153605874 132475232 930023564 401582245 122953382 950268217 755432066 950322852 141039043 713519383 977687272 406596657 62368991 276806114 442048073 925997576 252001749 319269850 126560611 387933693 708123769 320147588 607427284 934122431 645855820 282487196 91732904 306179128 751437041 822891615 882787771 172662002 336223314 154876519 190212050 872044446 926481778 483275504 148242267 160740389 886411657 371266335 169246172 64141258 258445653 400529208 920940072 560665617 341871235 958981545 695468192 711970293 343884033 393886973 382384226 17035035 845838255 329371867 564764583 197567833 261295656 935848583 946006969 814989249 990402042 540540885 972622538 624699440 168453195 870253940 526639745 220946639 90218803 127752601 808960750 658074223 937103749 455369810 159185982 444891255 324011340 557059592 539755604 138913105 302100094 60020915 308586676 84888505 293666487 281389369 898671462 805866324 215859169 687417036 770286397 51169220 307178800 780590962 907090870 407209505 497658282 619760014 169500905 685321136 78792432 890037795 977872128 629950820 851731501 832461279 629439322 4622570 178526250 105350939 683362516 908069497 256028979 163099390 196716108 85542864 67819350 969437306 315590496 482516707 513851066 494562104 803710697 686744524 5419549 834567534 964148020 786432070 757250963 820920840 99626706 602931750 669621939 313912167 434173041 751859242 550048647 18829337 268818606 489037125 743745220 312448807 447131794 742605655 314219784 791490396 776064355 987917094 8648521 728199469 284752262 26014911 460606382 284794990 418480007 918879518 247238142 206539665 344002915 467882860 433184559 720854526 389691182 384411624 475203751 109705515 310624455 302392267 421899971 429166367 707005846 813793710 395837507 303935428 718679425 144100835 54487421 692228909 952073589 533010816 509266460 401164111 957690868 862678424 957613746 499896010 959819478 614233874 786958838 334826118 584449412 695033058 273990002 33171387 252707339 490893777 732596988 932310545 642562105 420120854 54778977 573725827 885972875 813746891 258335169 657284937 646995095 463904706 648047650 817317731 756832486 324405171 321053558 861521592 677835639 724245941 333180686 31249105 148685704 425542850 623845139 873637211 885795788 635927764 202206254 813896862 813814065 359537017 447377195 955501795 646703898 655152567 9550557 153552543 303792394 119683120 736642604 808237824 760823810 6302465 865700644 88876812 944624072 269842380 371857348 441136779 802499706 137265502 59760884 252518342 451569444 152872313 101234439 11896973 618363578 618508608 385022693 172895057 551506492 441799300 25766795 159576 101771059 285375118 159051000 367848506 155088308 370767428 265353336 994210397 100773388 239650341 254372233 558714356 823700684 229552625 319164736 833244696 173249570 670049436 393714662 462382498 684713700 937533586 288771669 208068439 963630986 339665188 135811299 703596964 285562565 272253375 119919197 844042100 804362772 932582551 37722733 694741132 725261020 378648526 72296029 542878655 476074523 34322629 172160481 211784355 487372528 466538774 471720793 165155579 987392843 274921880 404536997 868473387 820869278 500028348 884273565 455040415 197552660 893959823 183290206 294449953 122857878 82581207 148176886 990616923 70113322 69170193 236967103 553204013 882524919 191392987 714569900 642093016 71276861 151743938 266347630 856215230 809430789 273217861 147125410 891148674 667612256 266939883 151047527 652205870 215337896 758088438 965488299 896972883 549126868 717849625 477075837 261530988 357609162 722211344 199268766 384493560 301266553 539868973 934862761 50522729 619914025 557733904 816246723 553590123 19620641 22570489 40636932 827708951 712829524 77998761 643305690 109845761 341749106 245664027 404962125 263977857 256418489 323051431 14067838 731851915 868730559 555245334 66870861 256442804 165499439 960467665 319620077 994150455 680778253 144746460 522508397 98194257 798933808 837721111 719706967 948940590 88981057 132749327 477508313 191922766 127988886 229448556 412261418 807976000 43893639 766714545 625398424 413324418 89140348 35891105 113337644 49594531 710572419 628526056 293440492 867104378 520019639 102260303 137508992 765658250 281636363 571223185 847714403 90006927 375356973 340814072 100685904 601037458 457154380 703389847 48256311 97473566 619085371 8946986 753770493 441569195 980116144 429757916 43053107 237942223 490052170 690127380 252161088 922570897 789517274 333966087 905269727 184208049 875832841 170034180 297032297 476291389 736516021 985300282 200607392 348388534 944811069 10235372 496485008 102273459 168919333 213279852 214633336 594546346 312222960 533301211 597720721 63488386 391129406 706031068 429408558 498412045 154578250 627266751 819195407 613570862 773127685 696358042 467912124 175558431 528636605 370027647 775854319 945560383 780990027 700978082 816215337 423926486 241715140 855319734 730103287 939170712 159964971 710260126 256698740 486414579 374040593 857757409 571752966 43581829 419886442 348913956 132067915 412463816 924316922 787620180 79765254 574237184 309176529 254100804 85896236 519019575 784104408 898792311 229937541 238593213 642237942 672725161 650740737 131272684 565512109 659578132 681736782 609248122 69603248 267696433 76931587 346645600 540577622 531854623 35077148 122812671 439609685 538744600 324332558 517076758 120944147 352449446 682163802 128812238 99645389 462053844 480452312 173733293 16238240 607927030 778351917 824528328 429699672 457337596 523173383 577213816 878887077 417044288 450135895 268882545 843047351 776450332 249735113 973222270 673084450 769634378 685394921 533630398 118630449 373919998 647892756 992053957 281163876 753419430 164870636 661823745 114281911 609238718 379657059 540103113 658882221 618621684 108034252 527061792 860265441 487210049 904263274 857761600 167540323 80496230 482330147 277234830 784923531 829391450 174516680 488600855 754620388 516140651 251959184 254250790 206373271 706660211 883965343 337256561 446969559 48156194 797238205 337235038 150890213 686865255 476590490 67242918 800349035 196194083 863541898 821524961 283006152 38460277 683254950 244076244 694183573 457905773 437964143 45930983 693037820 86624703 802637297 505402859 859913397 900737543 716236516 559798034 117759847 719997547 999106706 705540537 334561936 93542025 957123305 935431844 297474823 76091263 760068120 805415412 304904464 363570663 108495644 777319696 857734196 657266725 36374897 104562477 764347310 591823326 819189025 67219262 472896974 616110590 338254367 436835059 899466924 648194016 699496852 521111903 15910593 962724122 71482872 394880584 259608585 932460966 926639071 177155018 346368285 385135861 755628106 246865597 368975670 220922876 381030516 357679141 799462186 380564091 977664618 269441435 509906199 941593110 33978916 183178941 773794250 158364576 603339659 674950511 760025153 926222737 630582282 505123278 517650504 29659195 107066570 647309940 193867595 798498763 97935780 453845213 419146747 202447098 905151839 923990683 56372418 764907707 119376779 135119921 629727370 268005637 362232098 254459361 178126245 996329286 972589757 364941623 188969782 36655990 401484691 810854648 682426228 125070804 681644629 870035404 188251901 801621175 281687591 172415350 132280261 63502228 344872919 71986363 438611943 634032624 99477233 254645504 696796613 479327833 987562189 652179266 687429477 393891394 171490744 57456108 631669580 996399054 504732920 638306415 85933304 876823975 841621450 510141394 864957184 670739649 213163435 817711728 742570914 748428370 499081794 657964632 783193290 110443056 940944158 851142742 803784418 980068642 225598739 670168858 855863280 809097032 151500795 447944028 627207056 57722861 831460 825775100 323484965 997032223 147819743 133696041 688783062 971376525 648343815 89596622 873888820 817855255 758032739 625590607 147805246 56675026 333530358 788813922 384833023 422782971 225035278 323829226 15535054 610736815 866823088 956122415 206247280 136058120 961813794 942130077 154645431 447724097 465886096 634102844 826203287 456719675 723129050 320325686 597135558 884995052 197971400 190009687 631675151 413446421 148257217 101535711 808352021 422484272 63819561 801635499 771026860 871545335 795853597 819211227 493784404 720978806 523053278 41775630 660119315 475639104 993739484 169340445 925219954 494952837 854012271 299832148 108944121 312622053 237154886 166083954 331938871 772149238 893540103 986834571 681711835 384453476 290438403 375451940 289115322 792842738 855568642 407020282 936619726 12702135 696660811 434234750 819035834 510130793 724366369 12382623 133904457 515315255 123901278 907411100 148416147 834401397 672127793 593761155 50331276 495613856 167359023 30481851 418719353 379710357 25324405 531368367 371364549 663642080 179881487 386890476 764083078 445223443 159599453 455921898 938752009 557974479 460910472 409007801 103964937 501446115 298603255 531166322 560487437 558789269 111864378 946588850 624550224 196996790 368395089 349799688 820408483 615744089 534346848 921885863 721670232 815954691 500965536 768264563 61362185 548104910 397208218 133189129 730133161 662086700 825084592 886440061 946465486 108543827 916241072 120393732 373778092 953596251 633213918 340885742 82588940 494473648 835906805 107203605 586519668 312503911 692825071 817681635 295816706 796080666 111502412 183381436 377908471 241495423 493943520 413125911 888262060 397791711 984853259 285599765 343642580 452362766 997794604 144089616 166119166 246858098 896301485 270882409 999801895 291352598 711959853 591009129 820891766 823925424 960533901 291490253 413060423 587038601 155898857 941944747 527363801 992654176 154504467 547314727 899434175 814033589 406394927 612237061 226923245 898340426 103143179 364891094 928215900 612431171 470494877 117206251 782958687 100885769 224407750 455554530 238030551 459490122 663456433 525710746 686577035 312133022 317112264 279753020 879227832 928491954 95227444 802654484 178914084 486184947 576361322 303014843 673441005 682506083 692419425 126288139 640756653 361096193 509340873 54924813 991205635 755214286 938115428 62282853 509489379 525467736 611615707 936180004 428198307 253864304 820641099 124315396 87530026 33956085 792200673 449763630 194935351 16786330 707415162 834859589 585127053 840881955 476311625 490045100 549175762 780459028 156465083 823226706 572679365 815043545 550398802 576345491 4347209 889401078 218103044 999405490 557244575 537435076 480187121 217468075 989214875 10378848 883011557 814627097 993920262 338644873 315173133 849220183 815478515 421926321 31959298 895082725 257823885 979385392 292679731 827222960 788764407 698218752 191599553 652392363 771275848 691478199 448347724 39708230 741415562 453639923 254120711 616406530 183634351 945453681 795433525 327426507 312465701 704187819 398328382 179327867 289352505 530202040 450893853 908992657 671848843 624023227 521973120 660398238 100098099 548658935 881678292 673014575 996424739 860949406 729635148 608607341 262694848 840186560 470534555 936738674 744610451 588517118 772433504 977577008 479371458 212530641 737972506 771804985 570166738 351390502 512951432 558532433 745908320 893983579 297686566 209472270 861688076 802637809 302992127 619951459 147002090 375853026 912698447 317793475 633898080 581733026 936745515 162089896 671951018 575984239 735190262 282281316 435259230 482259152 511083080 839515663 59579910 898202047 216525889 293850572 10743963 270992042 172179453 319784285 636191746 401459477 332525136 779044312 166027776 502172229 769983655 262311105 938736927 688046822 388893265 575100951 514250542 756652303 239110851 76799289 991520213 770180600 411071821 815246752 615733413 30984730 268426215 795275797 775115040 224905613 466554841 546079310 910600368 879831978 521880218 133224793 979575493 44534568 659966877 917440045 2962705 484678086 441797967 766050163 855183263 688286670 93756996 289084956 552718142 246038616 920426050 191317166 921960459 568547793 765277067 152403978 53225944 395954311 453110955 370002727 236341592 840706757 746132768 639816870 923719427 989029461 62847155 895607303 654676360 477077433 162432274 36785643 887457831 851099180 236962037 638041314 185842399 380509905 592925898 848024480 437848736 463985658 243502854 388248065 109900557 503318623 91549662 137210165 813936355 270893957 119803660 261164269 544464656 764422832 861857046 774426957 106751570 669020089 7012852 185288320 9339337 761281323 524540129 932792078 820740497 559235048 336659099 114390891 880306492 851924776 454437528 458502609 512847896 813750906 54067157 448282443 896064829 755953091 303444873 361998855 633255009 483826693 999168277 786603738 602176285 904100081 842259916 284570583 60320360 149495291 517017000 184684852 525758700 462839605 667920912 60956806 369356186 343585930 611613002 188024653 59394580 723589789 300166379 203130174 971774472 459823688 978189901 814109118 199294220 76587162 543014588 909984176 710155055 318665856 131341735 406152930 1045626 74618144 587423343 586343727 838888362 990745740 717448524 756662842 66171015 353853304 484389787 419197350 669644759 696310785 116563059 774677862 3773063 43112188 491886263 275082053 561897279 27438960 844414416 711180102 114728904 659615399 994192202 966689370 845583982 62878802 747925740 557200364 338065223 204697109 248063093 501553894 789292669 803493043 405204653 479474148 875362517 835663365 577420077 295076022 673674496 768727717 85486271 296415708 130461149 651263396 150367347 29215521 737807444 549687930 563730415 188825148 295076577 427637399 313335807 777920410 961637089 372718362 150101156 531068591 290695501 122024153 345376452 780748044 662289411 773700034 244371417 879067054 947488723 5478946 377709818 362940903 214828311 586655701 679693195 103642310 173600721 537186112 444383918 69284913 223603656 107748179 411149288 971899508 502899847 538729387 723958530 769870962 336263817 617341277 74682898 950137862 398985923 886796639 898936142 435268519 285340818 6478580 841976102 342178896 35353909 959757215 192049704 332026372 456747505 992193693 443639717 970334116 742618680 280946512 46696571 904252010 197024628 596137979 511299384 965235094 242012267 399840503 582107900 666948550 216754553 19585399 344994764 92054832 133013766 366064732 726059424 853362486 240925744 771416088 227209029 408243490 589909196 489904748 923635847 437110878 394106890 17398555 688056941 67124785 953204903 427359106 35783693 62192917 347902576 107923724 56654416 684272760 768109540 564139918 264273561 850376188 279321616 26838784 533683594 547411452 484578284 747757250 456356330 783224850 784304941 183721549 733334137 772548494 894864383 961491613 616421420 607659180 434003163 511693903 283527749 680322877 249403293 796500058 571803532 412867880 960551013 686855189 68885878 316109708 632567325 677763108 510924802 741726518 103452550 32088437 221303097 965399981 542250197 398993330 669446253 585885038 221093982 893781975 584237796 625450293 666662477 753424175 883178089 143906076 308826219 34579553 875270934 888811651 703385930 997885042 497333625 152304450 812749397 843821492 965316091 117887875 704154697 357408587 798445324 768511830 673115593 985240144 821459162 745888628 524461410 590024796 700226468 233844973 959154475 487802747 565390714 551079304 356688915 460531625 66737095 594414272 993282850 204447579 675920594 571236887 634185953 986333429 409437049 926688194 117248275 981962552 873300717 738822613 494331102 106992509 495288993 504001009 587205401 708514517 972183797 720599705 987902678 641404129 558530346 666092812 915442967 624472508 31176624 749839875 999111512 122194885 685804713 433891867 48327865 542396937 48420198 596995672 329640086 888887081 894704088 326115134 334829691 121122966 70168460 918911251 322185045 534507333 165951842 694867158 443959799 965460535 781401598 497584855 831947616 719783093 223649856 482235910 899725018 182308206 716457537 827116221 187279627 431801587 937224796 960050595 814728538 641502118 343597853 518610812 426911414 174029802 386324051 947840213 243222036 589273032 661606110 640717760 272691580 607279684 191295665 311123799 656771169 531516947 664497758 815513078 660855665 493520160 393126270 963304673 636984821 308189985 947852223 483838404 136953279 952285990 121919831 908018936 547631650 288001340 431402594 244610905 122654557 933398634 871773363 511533234 753777029 254516803 577271344 740362734 220190565 493987120 296756109 139555019 294611398 187371262 466419861 211324163 623957315 596194623 110032987 28714497 745488838 274693629 346521762 38427519 447727191 963324268 143078373 150509321 367975802 628801911 672034796 627270174 2611709 432597903 485072233 823443616 683110282 84309779 561271550 587885449 585705496 528288845 910280778 108598657 411108550 32959677 327056251 611712491 900407802 337741645 408335123 152024825 400086501 857151813 242259579 357840886 51675619 801457372 41715203 533195650 874395577 855227644 795913056 323904971 393820977 688692346 54299898 765485574 242699609 875522225 279646017 702508063 653441828 761134154 37488257 243159758 36385023 254652933 168950604 141542341 412777205 627580453 92928981 6540780 262632472 982293053 446976887 472728370 728419470 844185223 36539615 835221760 21893714 480664592 754469951 598575526 648792766 914141247 729168436 417916159 511921054 409725526 827344344 348219176 89892295 787683759 233802148 795576631 495661147 976759071 307554033 72547896 369839620 289440390 826860843 425473701 588365032 208967390 319743362 301766059 747431680 308683759 853126398 380743002 885984024 705615416 690821410 889363856 242859248 281077104 832789698 162134059 809355774 1130958 932014488 739567131 472404767 991550783 457250868 65411367 357633479 34018108 250578607 488992544 878482689 870767164 855918960 944927575 868393789 803279862 831887878 533780582 637933912 954969050 802012980 268077252 379554437 224451186 162835676 160205164 245521187 566870284 47582755 747018759 947775415 308496063 758729651 985669031 403554128 550693191 720339386 654972464 698795209 301109712 255510031 750617368 23671277 339687011 609897916 51344351 380122605 785868085 445297731 695674337 261771687 606473005 669723456 109015097 85742775 786991062 768709233 314425703 412615168 753191579 540190380 453754895 127589238 409270318 179514387 46408978 300713322 27529398 204157172 449132194 401347001 94465373 403967372 648889067 177386425 599633323 474783780 426584813 629704623 20252251 377904513 737617547 276985774 492752811 920752429 248644854 474749237 771253556 574727446 143081487 111954966 310797195 395828047 749890311 541851554 808831743 627725457 395607257 376359728 711854220 463576530 164307051 565703943 732490547 43708793 989693961 148020054 176627335 412285153 933674320 536349033 508559624 47490985 694471985 29452978 273028425 368365794 666265442 56834579 790396010 294183792 189672268 966045055 863428921 973049188 254327704 889753694 740808510 734938982 686805490 547314910 968645124 526647768 762945000 756032268 964425888 980641300 623025670 536604170 970887673 829635253 457681618 277611624 50009317 216213502 239478879 836723158 134940972 68219356 446511980 722731024 812729261 121450032 782398284 825367529 615017840 51379428 803937346 861808509 489052457 89666042 711419119 308077611 935014521 597133417 263676547 365547537 953684646 741313802 672988408 69317936 644565358 291634962 481563050 785606376 793583014 661599797 231931057 266781068 330685785 896834256 148881805 509203564 536021470 171809328 11198444 400111206 141286819 459305518 338525805 268892920 958153281 407806737 599695271 616640299 72702228 179539847 830123778 42032383 968709939 164245008 614186026 549287389 91998711 674953811 268490894 328664762 703282228 392032533 612730250 196240500 668580462 871867291 388550449 516927115 531711402 75847758 251659457 14625608 586474002 327574738 953177090 88544315 470596474 536650113 456595687 682777006 201318232 998221332 203241071 475020009 507031493 153654544 896079446 191003658 224134192 708068007 182684926 23242831 787334937 900890612 261831567 323007058 621837114 888116705 59780593 457564427 480672928 639194852 207066123 273878727 609137696 886914738 21395484 636549260 261822458 803985438 346498122 26381255 500709943 27639783 676701002 411842946 331881370 323423781 552284048 519130525 507124567 587179856 121330443 441295138 781751601 346358840 820635448 548226797 261595175 104953343 943801340 652758187 457618673 310770095 562887552 46550861 540599157 516215393 257357318 974354440 781327726 183247982 240764052 728261422 776741351 156197834 501906255 367557214 708059028 147747413 446493629 172382596 118219275 887648934 467588155 561885662 844241243 234197745 280922314 329064648 244348941 829624853 216887190 809326956 561855922 844831475 597400721 326763572 47278405 721129048 962327679 136509725 842873850 797528740 333149930 940627161 500865803 984216108 409924058 741838882 736727047 123524749 579996980 625836078 188081044 111501493 32108879 101306960 346458181 421877417 234878218 824015863 26723615 268673138 41576306 229283253 855601894 831794892 355110033 409141950 834018394 654956481 403719510 268596096 367364521 389432612 201331379 566710563 114952526 105071496 850234582 58010818 78455393 281143011 196853657 779046472 118831620 867275382 765011265 947780725 12777108 74546463 582107424 978271795 430891929 839637273 401951750 901538450 847966907 58835411 940016410 168256389 753645185 891771662 226737696 147377110 752888752 302030886 149984319 103227825 212749480 606133803 859892587 171304435 908456427 67836383 758217465 351413696 433120722 788478895 476957716 968090093 923696600 288184140 476562798 586196745 585314232 731019446 176077387 331892981 436589065 463130793 772498777 206283455 315037236 763780597 85883075 922906048 907246918 799399813 755047793 14216892 617103617 686911614 644228314 344725758 524617045 830885166 586833362 671524652 72588979 113933491 787107637 929374485 257790535 595259008 664751818 566782460 730187612 170203964 246290228 793980751 617286291 828541974 196975643 848873546 240197524 88788327 336112596 85531362 25661825 140057449 596959297 648490494 938534176 649395660 516191518 958865016 718393264 686507306 840648622 537639812 898234189 218958320 462087148 851699005 966189726 932537303 395042355 775533738 406638445 64568606 819974196 810066964 402653592 532795050 188036080 804032278 918119371 202808217 640316008 396611081 170908734 691113671 339666980 624933583 138644238 252332213 907480665 814595881 924251858 311703681 5085508 722507641 386033307 883147274 692097372 55367373 547017430 491930191 853866509 49269731 978902935 765542045 64630797 130569602 827592598 423660276 447653365 637063924 174027082 408378483 300542238 978093651 387141053 553185877 858065368 840921176 148799527 55485015 779375624 596518513 46115157 959501333 169955015 683115069 848259535 659370128 57740709 405267575 292208182 887208644 907872189 762902345 119555232 837317829 265577900 477177242 63196312 520215438 155613798 203792576 511425718 144001169 117814614 458507939 504567498 622573395 644216053 30249160 791207617 897412540 463820820 444485105 760540154 177954472 534144470 578346483 332380340 638127125 579925497 548812275 888196743 566161037 903112524 606709441 424150760 7561935 879838108 295007156 826293674 146501869 153878580 164756967 428539156 928534637 641633184 910242547 671857811 411087306 137762063 219942473 753456980 119787267 657880838 101883228 550552761 926758733 668327753 861332657 890406844 444403256 143347478 800191891 206759783 195264298 851649405 642652733 205777195 772725145 847717011 811371952 949629817 181895571 610167368 922514569 636155367 907168490 447554403 520030613 244670409 615334650 743092684 907178136 575009161 242556331 209062557 772936040 519951509 602554787 897563121 7677902 970728102 536163483 27345068 562305534 814215605 411306697 496290901 927849366 963045242 951670540 671386341 124318702 51546748 330860151 608939145 841631672 400841668 233341795 565948892 154526386 357691885 584087951 818296949 980236539 868800829 967522853 369604144 693902344 816183649 744953405 576448582 152878771 451213748 398132570 680069323 866121661 52422872 900657297 16009340 530426298 651429229 296334626 917209415 148267723 175577679 487528456 400424480 335794084 40780924 453407725 733305276 982957790 895404975 635512791 711285497 308738850 610159894 811940352 863444034 924115987 266025754 108988920 385798704 896955322 571922068 46936452 394311465 120530405 714954963 845352682 867856904 715606212 678979514 450177464 433961317 370529593 693177187 289624542 650723835 730869612 639943952 909857653 192943009 259949755 901265228 389743929 567752741 578138419 677806866 719402286 137840556 552701413 823056968 187981089 256313658 299836060 551469526 385911576 413758433 676269762 185254851 984964135 125979646 962658922 809413109 743169941 617323726 445905325 265917955 629985947 204977303 786100963 945727057 403531111 580118027 357489216 863134763 142547424 521390148 142166942 69484301 908728272 956407335 843817594 441922780 899339723 160119960 518744521 874910180 808206021 382714792 252453484 655391310 756344580 259535164 228453019 914126720 48815580 150895365 646541240 404794601 789700430 489043186 10693316 332639998 308142493 593898956 524090704 169784361 582065859 38194350 28780683 421787614 847055523 553199741 618947742 879212471 94024878 540833758 571972072 692872670 723559230 951321028 892436102 582104997 517495243 720107113 777084203 742280206 743395972 674277046 981198467 832869008 644228295 602512737 211123630 849853325 241122715 23439482 450175511 426249570 126561284 272959524 235318520 241515912 121673863 477310545 854108975 471005079 409018803 901988183 86849866 863021103 687605277 911364117 199544014 978976004 843473533 679234596 844783515 777351513 664034894 651660907 700536032 821139596 414396831 168506651 470909663 420946471 870716338 735329417 789775168 455018923 479725538 358752494 440223731 406797456 303181589 99846887 142397100 377406975 359191645 256485943 8524016 204988930 999375514 845671070 736148271 26206045 741776294 217850295 927079940 573903931 370883690 458485676 286347638 96374656 661697421 809038899 202925420 163119219 713203761 615088312 11574975 261389144 718293507 577969063 400152638 188056307 73618966 137093034 903043052 303102863 675381637 397037954 602022287 772437807 720986660 723111202 923730994 929300300 43465725 550189747 568619334 417250005 565351580 214014889 494934932 243309146 969564091 405273609 269918434 105267406 380932383 261814111 753789851 269812362 841790156 26898587 39709845 776579670 907665080 142733691 638273964 409742920 478078757 428563529 108158712 421690322 157128698 857825900 192133402 514877961 870348720 805996688 481320938 664621991 772462055 962089504 89456367 545717633 151868488 952113926 896819484 462075301 422113904 995064849 36526334 993247170 58215582 776239376 289297030 303633191 942700513 206737115 961132955 813347743 907052180 956676278 458979725 730275844 152888741 777651897 91315651 819075707 378502897 400503534 635922332 894084440 307601528 55873460 506488466 692844018 144527363 813248004 583308688 149362887 309582596 872880003 175019894 237252606 225763376 913600605 498775735 735308439 961519509 112138204 972795919 344871955 398714294 775560079 526219791 888203019 982208247 184951561 606386663 719059236 158924071 888963101 762106376 994579802 658793028 989647048 574258649 516767356 778313493 77760553 976409078 492661613 219940291 688327696 987963360 852722141 470194890 840899741 219538156 100585637 761380333 111730037 301933283 573410693 475923596 41470780 388704834 834713300 94176785 370836767 683530370 76521585 316073992 802670660 633157310 222559857 613414991 312823710 650355372 278277864 135162630 529744697 827309536 356048334 179183518 769293361 616186508 396599250 875108962 628114145 422697562 329025294 328068912 541860860 780794540 764916516 543182770 558443793 85511405 584190808 376848353 586447179 349970574 758069412 216745196 846805693 739113781 156433703 423502126 786380777 816321781 772894803 287132803 558785115 586079212 828303808 929248541 169455095 146956528 2968105 577084392 426598745 27407526 434949351 273565120 469220254 453532348 763768691 980493970 51434488 512137719 175641596 687012175 345665185 739838976 278097251 149802946 461249052 844916416 816235959 669880713 642693550 161052575 788421281 949454753 549663709 26140776 379054091 771566991 708967279 990203102 188341629 302321452 693341207 829383286 948286942 529313460 581119558 456062990 192692683 4576494 459710815 588506959 828364967 821598470 721049691 921013552 429599192 606090075 340920301 228437803 222383527 272720291 292605146 395443811 719117335 526206943 543380903 775169260 688266434 991412964 979487481 66444201 939384867 471294139 713535539 231395532 221630709 61109783 365413431 348827779 260096079 69626444 590417570 292741403 262587420 390150621 366802985 45028309 81505153 154850746 523045848 961825220 428840480 913414018 294374341 233336266 862295233 468379751 599554967 935444353 179841482 865825658 880942620 397176646 494231006 716837210 965706181 156483879 779078297 904399040 290453865 132687183 826565442 698325434 865330775 498922374 493369657 745020086 584738661 717710493 288478473 670058558 105015403 254201914 75913434 791520310 796273804 343533718 502368051 224824641 181520194 825620644 499202132 236533769 819924981 818802224 158980108 780201046 514535174 888319230 439303429 852742352 122550548 471541355 980274194 195604101 675588700 581728365 163846646 412570354 356559531 531099688 34323060 170477786 54406931 24851586 598565363 757062287 883174457 596007013 726618969 365688656 815099858 295935778 47694104 184660106 376340112 327197776 429896553 99247979 579095918 174520006 164205313 771839229 137544047 403445433 70508249 832485020 553211481 875572664 814008297 56184543 416666648 561136731 815053085 676965417 146112914 59099798 130116811 338940300 171751690 940753941 888429442 583330223 740979527 150912417 739410100 735213212 878788074 269096030 814644384 9063952 702265994 705663590 159662731 98287861 369152464 651656574 614204806 80110097 169878608 738677762 270120662 45843773 97252116 641019955 501164150 606100558 611964097 38189316 316830747 968654509 582125451 883347211 68634858 947836029 645106918 74879725 26112744 109994399 351880316 86069281 767527463 103008006 81658951 400758266 729690291 331145235 999017184 109720499 972986029 124717316 197253860 670003195 277548126 761789182 70049556 425787388 127548766 589013394 56554124 94507540 82477268 435477613 991492732 237579418 494142006 266644275 305257247 664692768 561037074 924027657 918027306 2215475 58334770 691183778 346723943 476119383 165602173 147819979 936651523 671361773 157528985 63888718 232521340 19631518 442871542 227411896 46880699 800395528 132650721 266829379 540886090 457122460 506667418 866507851 911742307 765232161 600091085 832376331 849936914 640244367 908198451 115426118 249428724 547080550 892946447 35952080 708829361 605216102 794533647 611848335 236162286 622116517 53529659 695219224 66950568 536619303 152210905 508975909 567700176 505843227 51325576 8897401 894170677 301756592 450068141 726459394 537269021 153630777 270347485 669532519 953708799 347716567 524849869 22947918 235940595 119887640 23976507 998243599 520673897 85777121 887143339 782068632 818468603 102605605 531341946 227982569 342136401 932664413 554413648 528074689 126247183 939003679 838249768 618910526 754452910 17534209 65454951 541412934 524691573 3544674 907380641 454568836 828191156 615199859 942613094 527201080 520706214 66161472 235068427 879516623 354953895 95197075 830924896 725072693 993226442 196266107 329158362 392289352 588791146 53638117 83723780 336538640 673401079 486696612 417779336 644271364 603178945 317837363 474729269 960659084 88715172 155120124 533546825 43417511 547841932 412975644 926977117 902703053 531920379 529292517 806231895 493038681 11438893 786697106 517588433 311520323 116851288 220599503 390282350 874772452 165730529 870004623 604014542 565663905 150587910 558983115 295057997 822336670 112354259 71703076 466197222 192685790 681794286 150578459 612554550 324087909 648166453 205754272 994894801 447065131 928412603 349154494 288668600 369762072 3254170 559518210 378272769 384883136 847604644 897822940 440156168 303034448 302711488 539030753 925656451 988803352 680453675 75263573 328739760 431380373 973145445 909460606 63124497 164097820 502660505 378878108 978547715 618215196 603590471 286557777 496204284 183905164 431273554 82736018 770357658 222615328 682023235 951870431 233921488 281774131 640010960 441282957 312201530 820111965 919253672 549651109 104089256 883934647 25711192 662465790 718346006 382440477 922596569 108310125 733617735 823518724 230328727 549118003 601544311 523851603 855077893 922184246 770243202 483129828 485581239 541034331 943273084 998680431 656536368 464838437 718037394 540626944 397114901 23975104 479000670 333932655 361276925 50304668 209197760 423776026 989309450 36515109 19405902 302138579 317072302 223090094 476683889 396060497 53705738 422315227 246379517 216252756 816353005 287570814 406316391 77719301 493962198 879256577 681019399 170144554 993913568 617990825 153484153 934280840 751977838 303239782 750197387 823659488 629264840 170579224 342624797 137747876 368695195 325841400 302504942 684566380 465196106 92057126 480356587 137591566 194152566 548390179 993788169 323709721 413703475 768638008 209726703 429963325 571749384 100450283 6362605 878020812 512671049 492098369 814793472 302803809 697160829 118589295 64777043 69128382 760600840 996164981 459975163 775390949 717938706 254557780 433338880 421385182 327683676 611581251 509467641 805847242 292508944 694669504 70660484 94168172 376055466 647768928 628541843 608192455 651961292 329998960 630013189 27466482 880886732 38536074 506100279 864966939 328701304 582996516 705890415 477652691 951661367 194978350 360881724 949401225 983085926 765663538 450365416 662725921 335057146 791745607 807334611 701195855 524677931 660637503 943239548 335101507 101418670 504612214 772823195 840467105 520052444 611287465 590849949 511401918 601800970 501483960 258710476 233216026 868425428 675534904 51625668 474193484 736884903 252792945 835974012 176087579 788878195 886465722 339864496 424485197 890237974 478620344 121042039 610780326 392036153 840690653 763605658 855445204 972027829 428392487 731651864 6022994 908579800 392467112 183649360 178962159 979997002 289925023 864452436 162732801 814438394 638007666 260556478 232864467 563773411 143449447 320174180 324091018 738197173 972101848 117355579 147767075 125287128 198597616 967164516 152771995 918308561 230710233 791881612 462083508 620785943 99854630 59867276 282526572 309141499 793096174 878388368 954755407 949580981 369907647 874338009 807966140 122834486 753792476 693324714 549156594 87457281 71575519 453696017 613374002 862976678 424679317 811404520 750792263 930148224 256824924 930256643 659851137 829442071 644744553 849470394 391483068 504305867 240688910 56408709 992669377 144168009 296400141 936767681 793242330 671981973 743449942 727848497 783316237 652467676 434538966 115975867 580936343 177218509 882336812 711797938 352404403 78906616 52198739 975472892 197562968 273400687 902873261 445528602 180606400 880689146 956110739 763842383 677600753 743302500 382331186 173746281 720477898 839318674 580036093 985263542 885879639 990662649 909794825 547783097 769063114 38907079 187121091 114735877 221412431 518813890 627014613 730164898 900465166 156727547 745183814 782525719 733578812 40107239 384149457 75546203 488875022 336944214 290432039 425644510 355698536 590270381 160162456 263927942 501253616 384392973 144622685 453364043 113829896 661889907 352479284 565832167 148964526 636768373 850078773 721825545 91137162 784177785 491249226 632762079 853854499 215805917 867212366 274983953 68801019 244685838 376801925 601478250 956442583 982365331 203217494 164335067 665675685 358650455 184105079 230607512 275601038 936980071 47916432 300672695 146889444 319469231 462409359 275418716 355115995 483146022 91360575 242972696 649709903 717045295 314949054 109219389 578466299 203354630 889357948 764813389 207449680 130352781 777370224 35834607 681645231 946188965 630966600 674394817 612755064 216281857 441306352 193392366 96936469 254194253 339547237 977453960 453493012 841704057 424591842 755248505 795366636 769914700 511212251 585987103 682391212 669418460 258350731 715248693 741964528 377100005 779112955 489434461 756536955 922736295 539638 974272503 670201731 536427354 871039274 62355608 423419543 677430466 617379614 422659672 531732078 904557975 839648305 696748643 61550187 702665516 832126663 868565387 281705218 535306783 534468582 986410964 875368675 663685394 701421253 678617852 651274366 785788068 244008901 666118085 278175754 357727291 269399918 587767703 673762869 333931786 467630085 855092837 469330511 544893514 495589820 685340588 46046873 35601656 951264725 19463581 256305210 524950618 400974070 348508299 594794715 27720456 259078702 618160774 602027321 237171686 488182455 414688954 665902919 503067536 210852027 140029300 741350247 62148393 83635983 161576913 635510720 273963465 418998266 123758094 526123340 963582326 797341367 132670564 857488571 755118204 12359259 574995116 797295376 268431130 381129452 49444702 798173084 366489909 192541794 254502989 546324603 642576415 596209606 326485732 127400653 67862740 929832619 461476697 435757676 160325239 660370935 963941563 291500416 216181953 678107322 467654269 310796883 533184226 996951497 740344972 724014494 195132434 765367701 594470276 103774387 309129920 486564389 244031190 156818408 443048726 679639722 754593939 474334037 163187996 674464841 312417562 561656042 485091392 152549403 269911658 344231529 889810179 961266514 319018128 456989835 78839784 725976576 238844527 155269031 212788406 887601259 813558836 231373955 821799683 102810 142933738 453055717 167163536 8516874 494774097 919653844 398893537 476466492 811253369 431530914 315028151 622347060 731121053 487070568 574292584 763254886 588406545 925789440 902403034 930313831 373489948 915635981 278847280 588606512 359066125 108359746 990033463 785973743 860707765 850442339 596003649 623081751 881101810 689040350 72051309 247216833 595236692 304963248 116600670 657048699 309056284 709369940 479783710 909893647 112743249 147433997 620465773 936882111 38863683 577316714 546394471 461618489 292225903 654264898 755905496 20881268 527221970 467547459 629588611 987572849 736348750 503453626 772222582 126521052 635586028 14309737 104756992 725282980 128254742 309913896 538967459 865152472 170120840 424839249 26102275 200537414 875118666 238582158 643309209 643225231 93542474 685429982 496095862 499493267 305242423 597262660 648849852 983418605 257278325 766958223 394652389 447827214 307306812 10248043 211526760 552687577 472588517 766821631 620909297 933992289 479359128 639989726 688962118 623205236 304404893 779339494 64071903 76796230 867953277 298964262 710863581 800362342 928128516 156366650 767572410 985095708 745623346 1913544 788217939 759084415 252393105 712465577 296306849 206213044 812141995 286343931 250301484 259805615 213381213 685156396 786199136 184126454 569797171 236400990 932872845 52301001 786096503 15716965 520211462 2640735 416177034 134787866 188538263 607291287 991536142 889368981 268454891 66259660 48537035 390056454 285465566 111388316 109450495 892831127 782435196 681772743 62535640 562859822 410623646 589176722 598405394 722003937 167669778 788627707 481191380 315491830 756250376 576370056 653422751 732420796 489046551 379217018 686280819 657310913 512834179 939238094 517870894 830293429 218804047 959238759 93535709 113970617 885014466 464221264 969598100 531590333 222695987 259414557 423836553 377738215 87354829 635206507 897583311 190564440 501525592 26161813 812184804 972296318 216407378 751210820 227274129 724053534 765126184 301679650 865474734 416580354 938413177 618579691 142594844 685491091 78847565 948687996 989280428 715556318 341215962 488195487 329678356 288001021 218844599 167907490 756927109 240167528 367921580 144859377 153470755 445033971 299003592 14078023 60923148 146018732 36059790 565990688 490360433 216413639 170182643 35815724 13419078 315197538 241638725 427225549 430829579 192393581 421248242 189646527 993853467 554917969 152482671 754976810 394731687 518541301 753047931 904062490 221078726 481773654 489549076 630885741 523662305 571479002 424975020 643643797 682631144 581099794 120313156 766810527 213956502 395780538 281805887 4567417 371694354 485289189 539943353 80429755 470069492 85057884 743071503 520501258 350024409 998701468 319725466 119043026 186432401 664004124 937558320 723877266 738401258 838293483 183450148 158442472 72925621 767311830 518557608 105306252 311539281 827842033 682998647 921390541 197926376 61704672 630229517 773016410 191604196 355625682 104839443 452180312 814621684 14428758 251577501 632575020 869650724 978134859 173100235 511829929 272478370 892171033 315676746 449151517 60152827 499459213 386084067 64777820 475710043 245691370 452791692 23259235 900220444 935711077 746423265 220835247 1393692 845772425 867782026 198804766 750991321 329464142 634183671 822530874 545273116 556366835 972124433 172646821 304648144 856811803 358216527 481401880 657067272 68869827 818050156 58530542 915501912 154182118 882777278 596491739 102047473 823175479 970743809 705649473 156037956 655563384 37532303 772267220 351642586 962847373 385612462 919286946 277989198 492225390 583004895 396434515 915947051 290549409 684728577 792559641 435534741 325866797 728333478 862367080 545188475 447501552 496012927 625623626 122605908 831763912 141323273 520475827 992166452 959491411 285481566 271617987 837059045 868748717 682560178 630334209 182461751 531189028 802644592 224485500 373204327 583844119 636754283 717645303 360728387 320191806 550833665 609029531 702124886 37643595 469662166 646441494 23062687 743998244 280148533 477059898 358935791 390409403 413283662 66334668 592418603 773190986 320298155 367634996 747448840 949991812 585968313 537102566 775583191 723464366 96502191 893177187 746786627 843323873 660253375 194378546 910677631 988634451 830466778 674358765 490326769 921123080 843310729 705566077 820510590 654871709 987775351 414925743 807897934 914218355 58965624 488215341 551049076 924485529 247354977 805359819 854450911 964060997 695554812 304499485 946907337 697010157 995599642 797926816 129530576 693550437 548477096 748547722 669755376 824078675 700353689 233657867 588902459 6942857 106059434 30368500 660366805 679953611 812617458 944749172 571263393 51657877 148282611 499017400 957442470 723115009 837961460 865814716 27783468 180941267 266012326 405978807 731240211 941264835 993087159 643077954 86221804 397143237 322351741 936489826 929617494 228957907 576752787 913585435 959661896 185116834 263687986 988788988 388655225 392922574 588472648 188118153 307250977 650407838 995506643 674109031 840149622 580801516 875368211 360051521 883110271 107066425 151988194 78578915 922331695 570549742 619002434 375833412 680637205 392089205 285521480 916597996 594240933 90595956 65008850 282610664 208171020 277405524 879408987 53202412 168864154 944183548 360030643 76136118 974520601 388823201 753983187 177605624 890140145 321297975 745091989 315984099 488369496 362882563 656628167 867785640 883875731 888658313 224503116 205394768 497687120 559966282 403279313 903789567 645173899 665983032 621697032 407814386 567281484 581057296 854012987 885089607 570955184 800061995 424630286 157458446 248309949 487814139 493948546 606169461 113048276 311164024 462768891 173412653 295631075 621121108 20813615 247355369 919068237 13930881 656185611 167365412 446320257 365338073 23390934 303698805 593387687 273569796 922026771 646700765 572976462 787683774 667895606 360899207 483630225 244959909 631805672 840799147 265440724 420869484 177850723 236959152 963640498 461995428 611660270 134270879 732206372 932112330 919320136 145202487 516516316 225153195 8705538 744382596 403497064 777051389 70043395 643918397 743954343 136606438 746335742 639949779 350011170 938358555 733388320 963123963 437604378 157865996 383863626 108970457 13388777 663252827 13765422 580176450 275915302 703025741 657494499 729809062 489535830 127576079 986561047 232076222 662837206 951549061 526177831 772788841 774094321 84617511 419311403 73774549 602728767 50041746 937952018 770636734 865022385 474375400 10338567 109839098 760022621 487876201 971907628 885367637 655814755 754165634 402911010 275538669 556705226 997781445 81495966 10204347 811985204 289107536 114888513 31227685 79717359 314265816 794242427 408468160 655566030 90537150 875276474 659547131 812654066 625377846 341469081 567966890 526252046 894530310 644838019 97823134 198128600 438597277 462818320 175916027 722107685 496010426 298946979 557580457 741118250 474781187 848599716 825142108 810294016 703357882 80608450 2221510 162934996 936529202 463882188 825969988 890893264 145774502 667830478 297801533 187142955 268870162 156082079 514250884 291728688 64561504 189853279 544857727 138080650 591954965 103795635 727361245 796286202 435159668 328083711 746522625 288844219 66609317 426797865 887059792 272502805 766525093 454414502 970252876 49079660 747966088 187255644 437545747 812155343 68207615 578272523 360071787 293106648 393563100 250969108 883595982 498155331 89725781 57647849 277177196 129045694 649040910 787566078 661389688 910447876 321114179 50434702 999958479 420233330 60076278 99224667 581328001 155730629 746548023 891819088 833048460 366884503 933462327 639289744 91661749 365521240 885651227 878589410 527511907 24728187 262379167 754360488 428009622 726021833 172519598 130246399 906777349 523280909 987008645 223136529 431378671 267913736 115570769 755257185 158568995 855549285 809093868 712903075 848524236 122333370 916282325 574216904 674516607 373247488 167591207 140735429 208203081 80424936 89937011 957474920 695594309 611791983 738353570 650410470 360335409 889648161 843825362 876381463 321359004 195660846 771298515 379523797 112353001 426640001 428649063 861157115 462852 571247116 634359137 768596483 25990575 506670564 176911225 594258125 142439886 403704814 610871285 745647922 744328060 997587259 332743965 144004809 597528252 520490771 466209458 284045777 349441876 486149483 884594606 819495788 296644234 855099237 817916792 174898713 531313414 657411984 227926896 676091734 753955693 921681381 196348087 810899541 835888932 563570359 928756188 175466280 995122500 588962808 322089925 405103478 258922052 647486406 50856789 958478572 679231718 261256995 783729904 416519586 799811424 796831242 337875399 814888608 155852161 322344448 425025391 381481803 55406604 297630476 297521264 994829526 476657498 509993775 912008524 845283769 858162374 991457657 936835593 301563246 834773073 795306882 71443941 284574875 815920372 488839292 101224211 656749487 588213729 28680899 783346834 195984617 766915436 776046555 139004266 526133544 348312642 226227746 983306883 177605830 72414973 351868972 600207102 866865153 615975733 485824423 607089778 114690839 772974905 304494360 112086987 477153590 834714685 769873093 851874397 454618108 483914154 689231531 490454733 862762691 530225707 322621917 184370276 604780830 361649733 814968976 995139356 43715193 731780878 887949639 441616133 740302606 884933307 286501960 539725830 305045978 26883801 79228130 337870745 512082989 163122454 276097013 844642491 607389095 729394780 859094405 218365269 366546702 324636111 403556047 981613615 723360944 867957505 878497800 206504905 149062651 333869944 984296207 53053432 927217251 709656640 649324457 413807273 249826329 176015585 172803409 471233305 327150341 444391681 316376543 434556906 967172956 388149858 344599 130489695 369500012 751226277 836501167 325511423 538650844 117243546 791181695 560187871 699544557 705547750 526406983 990838701 256830068 672304304 589202 701299878 458470859 361578457 312591046 409364552 925983361 934800214 543606795 87634504 350468408 53692711 858864807 709438649 3509656 735046337 53480880 950907266 135285833 482956195 722957565 87948763 147545378 940824908 554901447 499989434 963092616 840157659 19337512 953144767 146831577 654893508 652367609 529427339 475270723 855700026 87368124 408028575 488661812 932292157 421845444 493022294 767705230 586560290 330289854 214988094 775216596 947232617 140573185 585979195 409564251 193272556 866791001 945648135 11904784 784164777 577749364 681984002 787947955 122616859 501835851 71556343 897473518 978895089 388461481 520040732 357501390 898128986 882576598 310764796 809285882 395603150 438385785 440886314 536416787 359159898 886545069 918055036 760453963 64765918 23145315 189682472 201752951 676370107 662294787 277788205 956158241 791751486 140086539 593817306 807795219 534939358 863782454 672581592 973601470 670095783 161836994 666715234 546843613 205026722 878867325 538485662 39819592 997917832 784715960 22422533 101447688 246328696 163323186 54831437 168573540 702410172 644062442 911556244 900006754 307746769 764104238 315077064 655678846 83028389 562689046 736372649 646700832 38674563 906179174 460541097 274575456 712454765 724894167 499811567 916382040 646017956 297776329 92118485 453588942 520417659 195995054 576402974 341927499 261826167 404185401 472662907 515916308 727070256 935288451 92744407 274421134 617520844 403068325 626737738 255581228 126758090 309265724 455566343 158189884 873387670 72847504 319091291 343201174 417676100 413144750 527489930 306720266 106292358 133704141 473482717 628195584 640814888 566960902 652158485 606920019 667516268 205065379 259152505 629100500 864256326 503443593 962230814 723638359 325615894 169676810 783236045 648553572 958413096 768722828 689406552 926777541 172259093 507352859 12988236 708081216 843460808 931801667 454503723 438144447 666450992 525061987 564789311 184754591 58239936 3020221 768643551 190733539 308737610 223791915 753670513 901143118 526074173 662178380 510538522 173293434 400684873 249213989 7956574 48849492 562637987 40975970 211670886 62514884 395308275 831147655 312086970 280625841 959622362 808849463 887598412 473112106 873512112 383877059 742953808 666302028 640399372 409684320 797110105 809817777 9975307 913714697 47146543 501496137 226688487 286994660 520726611 424956347 500739245 777837216 206318303 329417742 55928993 997852133 819968482 527867473 175445203 811009373 468186362 330257584 727830986 399102041 642859617 269606569 282105957 54515501 829224897 594764220 247659495 411444891 776824739 440063258 730270870 448209372 80226726 505512021 930484690 505577895 92034953 894981422 640867636 160862541 341012629 374432780 552650269 124666963 672562363 109190253 603467539 800619268 101309182 11860855 1212648 436061971 237390174 927154166 772099791 538793733 533319664 973435814 860710624 200942128 366477243 30335037 559218500 153386690 488272611 406008258 751682309 938639798 270334544 100521371 718110759 883174834 176277155 181209396 832910124 714132180 203694086 960583531 278582170 766857359 404698153 89203878 477770586 354639857 550457986 782120428 326201289 622087221 382252000 785506385 832780127 373693375 200042 539454688 899811623 54567305 643454758 618658312 910092933 863931397 546643444 706585460 862224136 267509 213495270 581093293 459613813 299911995 320441465 712228716 904798192 807176386 427637046 206578196 775217818 553594329 931320108 70953781 794201134 195531880 620119405 285848465 949303179 460566430 224583128 709844405 957224967 211114532 89212895 554404568 565336601 527076199 824242024 281813921 348923108 435204668 15662781 23924098 642814320 950536547 163363579 959911438 233240401 903634681 780414860 776526141 723098771 414556566 738584664 566616238 231665509 886807265 62896714 904174203 7520972 292411587 138244423 716997998 95029474 353564748 669773850 653780994 113030267 461050122 25273982 837379031 285842467 734324256 827898720 159659891 872676462 640256165 929262853 481306575 315523938 82656436 241204260 852784850 761144586 905354022 626274 279513824 660427305 359562224 484439089 792015033 837501738 227479741 926095101 821347846 918535092 562913884 115859693 119119403 863118927 583089522 234835945 781551019 443712712 642203121 54822585 876138023 753198260 324683732 561180764 668476691 299021042 321336730 524861847 261102009 27657318 70078201 184001210 281211638 647502497 8689631 590907454 433285226 202111266 406856289 603979321 424958182 295927685 739741446 941475115 856071016 864355599 164939909 509805632 509852721 378793840 856701508 877265007 907830569 667399352 184100294 949067856 807430337 228024722 142037748 304283373 630044012 276937049 38163913 828184100 281119810 169447830 278317945 317665502 36467219 502957788 506274539 136794763 483657834 284196575 216719117 256870122 169774405 171071331 213899498 650556040 547647545 843908567 987149105 370153059 34286796 448512479 962783305 935690257 76700090 922182295 50564289 861858456 180588254 153389415 25131900 314647403 731676642 284498172 906952599 989394489 328759458 209541340 241083185 744762749 437088920 94232469 310364288 221122000 667600626 464386679 552542994 221022386 808161565 488184312 172666575 343378008 203015040 240614650 147983439 354774970 799181268 624084838 733116970 309305948 926941128 515987830 149969473 545863337 688003483 130507443 501568901 633965221 659866351 871274885 908819294 503695120 125813267 711036080 713411405 660729587 433234461 892907574 798608478 858499477 2560169 247211748 258042250 616125311 979369337 778124867 377333837 627046679 295569218 545205907 210624511 144026679 599397635 62139205 774396929 33740645 487465716 158360674 755596051 47937946 79747736 785705693 889516167 209942125 915165666 627316376 994767159 426377795 670573593 576915005 722698734 277787343 945471250 360122667 135937578 310746361 556513969 524746588 147982242 707066460 767717521 640569480 709583499 877154319 577219518 140345174 28511236 568315489 832033190 230395996 645333640 115210368 602799288 226323254 81853171 524598741 551834215 880959960 552552864 255148331 780654779 486368374 372486636 416839873 393931967 953117522 231932335 884207626 342830579 831609678 771963665 843518696 612263241 52581741 212731430 903118431 515250748 799735526 924309508 54494337 274377748 978505560 867049726 360105198 717262462 872862271 162862932 775418352 727252803 648126979 272494832 940110118 221142590 686816549 761524149 89419722 896381521 691005952 750212019 74613117 309166 910521758 604862238 504384488 347706780 798965378 719602147 763494667 815564886 693555354 459957080 850312779 571588405 960606975 284730076 626071232 64187770 728415507 197094583 560334275 622673896 158636277 261043661 389436267 519068648 672060125 661215120 620832167 788655963 816210575 479143575 885518465 125960830 274754057 556803204 138481303 976877820 48872735 337671387 440508670 774798349 491621020 152356505 466390062 773731822 396708765 431360802 398586605 326113119 892379800 353852536 779628521 922147146 664413207 862636074 226754512 225515073 283979011 714371460 218534208 938768156 539559858 804072133 546429191 918418761 212636482 84659551 69052963 903679411 176743878 527083908 391701114 410231810 909599385 849406180 703988764 473241806 983491080 255098328 177341107 856466044 333910753 652818862 807187471 831184888 293787587 627452490 667403130 326173708 709464209 950107933 300649261 844293082 263153388 505350681 965376751 100316248 64576812 76943619 84178758 891516718 825278914 834240676 75066345 586244071 81578114 332154920 805538349 724495333 736529197 383973267 418360596 866039785 212523183 274299943 603708546 529933148 71096008 340283435 661806894 577464129 139487523 414269112 805286196 962437973 27373201 867216322 675474833 417494954 490328735 676371929 548055054 238033579 102786544 568066698 918909085 625283294 908145139 563897314 530033659 594016385 381754854 590343924 600675695 654709267 671338729 813053642 897222500 440740275 290553125 46273901 700047215 886492876 618033244 442038630 751174568 686524342 696174820 477553084 82600855 146339680 210287294 364532408 852408881 897545394 376055321 329080631 187048158 907117277 918889805 711967655 104111870 911559869 259898071 39294500 223309255 349326625 257749253 648962712 963850857 18492756 627482053 574717469 472055922 485561179 168295478 198747415 194460779 752866589 544813281 402376305 498604171 566465981 719347544 329409414 832376148 569589986 605374896 314441175 496655830 426703598 407037811 343788905 972308629 415808600 346038324 305689509 666353519 340197976 333689249 518660867 78613634 320347759 957370807 562399107 510234544 793555115 618217315 270653929 178569003 629981959 20809048 270719239 312715007 41644043 740014105 961289466 265638094 955565685 300258007 183176767 800519475 420642681 941252937 290058963 559969035 162932486 884536028 181696043 489694728 813331114 300357702 122382395 78325677 783171658 502176134 779126155 905204062 126885952 129268724 467159973 334564552 574458588 523233181 461491953 817119492 719847758 979201926 386172824 624389565 627034164 400899595 849610615 592587431 25609132 524789851 677655209 568020752 581974066 177872086 805608674 58394299 602229929 40963349 895115479 855168775 163036774 503438779 631868471 354748918 82104128 149549209 195607737 705183170 390124264 551624431 24996730 226930560 554380466 677068896 26019218 991082027 568368006 646091188 614617513 112869259 769534126 757596810 654908483 193638734 922669821 211134803 929149882 884179023 616473634 193073558 981879028 863632010 645095124 403284284 523351903 977863841 194952574 401478416 715290882 670454004 836195471 265602134 655849459 566818281 535815929 338226035 430975870 425350291 303694576 32076122 670395827 293130014 334297116 512356218 397769745 232509518 328922000 689918164 273770066 757246776 560098986 257182945 706145099 788705447 113510027 570280015 579562120 917566310 496533660 843181161 747746857 864466758 981586533 410857216 814330583 747700572 232075398 518532991 858219194 976683087 518557600 554216257 519917077 782399683 880359661 405617027 774558398 604004126 11757223 44478322 188795724 17353933 208410153 850614930 564036523 401721975 726691085 997542097 841301781 904087150 229220848 235422050 988825626 352512924 749594564 677897236 278761019 673188793 295133703 723053084 755558505 420271106 272237828 214398404 400043527 537735693 763508653 957616379 805728277 9754591 260890095 615727618 463278397 539101509 794048585 267752210 615234738 737182668 460740027 343681195 672085888 808136578 860372443 132343507 855756465 944204785 20333203 393638253 77421613 211921059 457013497 872591836 983989945 488674157 242122190 762612718 937548973 973666701 444129072 504485675 976923633 843158285 586905486 271305890 75322718 483580834 312103533 184182476 428165 389325138 520321152 788193093 190806544 57855318 703337132 988875191 473846400 447729062 878551920 896776827 308657232 617678739 355870160 641141815 539967648 157509617 933229268 74656576 684709958 393578396 491274799 266891927 603206705 229100503 104135240 391285514 193348192 835389381 968478338 999251853 685779503 783666875 205829921 114118512 167622335 710310869 369848464 757475884 487439493 983716848 389084464 604618321 210071232 110441201 436808087 97019419 473437161 992430728 246226670 265350703 264973777 687237718 123201883 506725898 540389808 41950916 821046956 698436039 925332293 647181832 578136229 997541278 489613899 748944028 245712432 366978986 425382689 893276262 55524610 453401849 435312234 470803993 570411577 6487672 384194735 482676695 53100902 30325317 24020523 70879141 19217879 705403437 878877767 609405032 275025515 636091782 460281106 823573515 259223071 947286719 292733017 6248793 266774959 458003612 699869592 592145822 830946138 463104199 827680941 684195147 747204694 13639445 735127306 179453305 702561874 984699837 816059916 410485966 421028571 119706673 36953865 114546455 755117554 973053609 854671496 185779347 263738314 804535526 468196367 680412377 341576102 390025480 869599812 890463388 811759471 978837682 923288658 852983958 131945235 444482532 163410258 710902172 868255665 439162722 666229810 815123014 744408023 922406064 609247360 309242440 676639863 21895536 333741428 224949423 835358235 678850309 220076259 135468306 950469383 500840340 988843701 337070959 601334035 532398723 489241913 622878745 870252352 328106348 570495689 605797619 847151927 496410140 764585392 269080124 596346314 913822645 485977369 307453248 867827849 372777549 497697315 226737873 577390408 896531672 559486956 202100249 493882193 490211019 785335435 523314015 777797460 529220597 152379110 306455519 848329855 737081251 343769735 370832002 80445310 202899780 498024905 148224807 44510779 974256313 23916534 970754348 490525056 107380749 638386493 810610324 852193388 143772056 453257152 676016898 63942839 11863151 243567060 361523432 851409346 258986113 912250572 906963384 991446245 969497925 795851598 607185348 236708706 779922094 284769832 972546397 588675884 646057578 970686536 794241168 893047596 915601899 466274214 530199162 953342128 955664682 901888197 799535211 240749828 63006378 264652222 844613943 72769779 525441673 911613030 794366473 538247398 675994880 809615025 591899595 515861744 850438472 78084505 625660315 797030301 109419466 196023455 777989100 118844235 49820128 4812333 990014566 553521886 988358056 106663289 460228261 757159398 575502811 91101635 685016109 166000083 855596854 483113430 633301081 125698452 900825136 542506319 868535603 721769132 66658257 943581975 727496511 205646193 271448841 517092324 715410323 231817897 238827274 98551747 57385391 310843534 241173276 238848373 547761619 994533739 400820968 479062532 945276043 714355863 592846700 259146493 585048896 485431445 322388244 254024750 523556925 288278368 118883416 337204252 840430557 320217197 924596249 762416386 588980399 36689408 402711368 138163458 24488785 621179090 127149577 358743302 816911589 11463540 684759881 447694544 269910111 55459546 959854791 351121220 136037690 740609309 417994073 421227426 115476603 340587979 803293636 508360591 143489322 495245212 552507692 104900689 243257675 891220934 449542812 551442726 971206325 285944105 762809642 45436277 779533631 520933312 515694380 530617368 183118905 735808317 737658126 945435428 434178954 476801133 692145832 444626820 953662889 593086206 392320300 436757424 681380635 668977949 366775494 109244456 281304301 677901684 216149207 384144497 190500493 18090602 138721184 506298447 892347323 724545621 463370608 745337418 410851388 758710375 930873291 757290645 216683413 957816864 958509018 4727254 956789083 49428774 816880340 421920375 667960110 519618216 464129705 318462579 448487493 496316071 238493846 79338529 611359313 945635737 333450494 97850987 896631960 502639868 592867873 870865670 143789566 130243887 688029485 843599057 620218135 306389883 437389856 893332868 722416023 293427393 408311837 491155504 813849383 465590576 777730766 519738308 786825217 726444592 823026383 798840638 21686152 12139500 160850049 415777336 682787152 788132462 845390143 760181611 1998082 276061147 263299171 306708691 21830962 986671926 447090768 341500335 420287660 59058580 605551802 152135941 566558587 522980232 914411277 126615597 135739950 429675663 963164436 393290967 698606131 598784763 509984453 192421736 44157998 595738248 509078648 559891678 493371290 847180590 211366405 450135494 469421487 913296492 889928959 5626482 455215007 529529028 749068838 178897664 792204397 276313945 748331133 623166222 297549087 65355184 857109416 593100581 999699070 410102154 72341216 511185694 196672526 973261199 984949910 104149957 669414846 629416281 165151100 215928506 321033655 463891436 428561182 586775461 617828794 209843497 919137989 17381237 765908397 962998005 663162095 729182696 952572137 351139626 754869836 475873021 986443270 710075653 87548640 783048417 117489893 400118997 904806740 449290662 155302312 847059000 645750063 752903893 249133676 655228500 376945746 635785321 446869140 699567184 437328875 762768633 510150937 119494922 748515698 705208946 519784449 588767972 955995880 998317702 105062217 348162963 769568724 55347220 534101960 752181905 472816879 596698892 650628058 586952942 622111749 157825669 24419458 84346683 855470618 706060541 601954840 140915574 329270253 616561217 921411956 547630013 712713038 138115166 425391701 216109842 478054148 172993676 252887099 179476523 172684150 141774950 637908568 993941470 913676143 961415291 754609631 330499124 306392976 691514456 761249110 138588819 590765924 825755910 489425104 869892181 956903814 337083108 587547109 382465842 782933991 560607130 212549525 210618965 97963819 617219137 996108697 734665683 587564241 868564404 67287951 116222270 842933549 826231880 943678377 762304885 855794040 969250013 470228530 767174880 267290361 4792035 664221553 766918648 462799079 852578999 550547252 366215664 557732358 473425539 10966616 710628975 873404239 789886838 259119049 857056553 995894805 126452504 487112664 169520363 455557598 827255517 39121101 122613085 665668943 503533066 655177711 291397099 502957757 793085633 828759994 665046082 991838221 995016185 929269707 399208443 50071202 154789773 445749526 25050786 875649702 84670006 244671119 460917446 649604894 979104213 906199672 504832853 327458089 62935497 221427066 862348724 274419865 722369814 127070630 804076232 423455006 99510619 441347463 976735079 657609339 874920431 794861281 363067120 275942585 628136604 25832722 956094006 178296412 857903354 20662539 3349274 608159692 31688682 753769052 557363613 252164449 938084609 135571390 301099574 692575689 705653142 450810901 542415416 339684726 985283780 323381304 398228167 219664988 928348844 329979351 91119332 841648695 798905298 548154061 91551954 107093435 841641039 806328146 219219864 603496622 663643979 389227210 190987736 572655156 852425189 163667335 113865627 255761798 488151715 145795947 908776485 932330511 121142107 576894118 108633745 806730760 802947604 690934670 852342205 859734046 80922387 585644745 284930067 30258021 749727956 830004590 994519202 480418328 730909299 887863136 523755614 479375568 762424032 544985244 846353092 136287026 56800419 599444537 532977499 115891030 47999241 887186459 862304138 879403705 348800891 865508289 392242892 844721374 11224490 169486270 242535999 10361334 483417415 36472771 143347404 806087008 403922066 595108245 852308686 338265438 273970812 556514990 410204939 488550863 546121012 406559898 941250454 965336357 767259378 242241036 451005539 165069683 451606788 647965996 670352032 366104650 408594055 19319795 693056073 312518481 749462034 782360608 643094364 708481163 958360020 959362888 189072622 3461880 342528322 271642238 564809454 262834896 835795503 629251267 371345982 352443328 973750255 924648047 198327321 840486334 82124951 629214311 143794220 959357870 428559446 303188119 482629560 207878143 785887845 54951309 904090870 715758715 633668961 348303438 215459425 226165146 484900684 775577386 216416777 187811228 11716011 322713689 559772742 509550767 830691372 178207230 858692259 421942784 972206136 837516060 623321253 340782327 100839355 894657104 989626778 242674274 479110843 499942959 942387169 501242484 861043876 16765503 718634040 406366227 26732821 236928986 368079252 42849667 645134206 896539815 872923239 823265994 339517252 282260667 138878310 293410669 474364780 247657516 548588194 913715830 265144453 512569928 628577483 93721907 877456002 383266338 762024080 591535625 5818745 258983182 304316398 353809580 835631406 369691810 26567820 999392925 518338426 806758729 432977136 741548652 573727796 393838411 608811017 115459383 884531897 246318608 903937997 593311484 327299511 445041627 453813137 237265989 727030304 914383588 857390719 233659823 705497472 914669430 406029738 448780894 76392224 331482266 885283677 329658753 994182310 301879220 923316632 707522551 240375442 786909401 707084697 310182123 175605346 943401947 699760671 877585053 3520008 567593083 683530489 937196187 285349893 722927445 500536556 804918214 709643490 270988609 588534976 568325841 371605589 219960322 477630776 47730729 181699083 191019427 298424385 528881222 913087926 475096976 441546891 716055920 756300387 572900797 958727901 813157099 125634841 463605575 239725059 296038110 393867196 698744466 879065388 958373837 523426862 131193702 844515804 900448433 172558545 302502643 259929957 751364182 926702212 378580891 348269876 375084527 812934925 744672257 202810832 616339653 184571498 43962058 225953644 384752400 582412606 65554699 419216277 129786800 217246625 772828104 17362505 591042841 368375819 937226664 944251719 618440490 524653066 763745343 757860180 968340619 450096626 360684741 750287838 348636990 419665986 269515422 841209521 832554861 695892403 685257838 916472582 354189773 459732089 518215654 311581377 52537947 542816198 701065797 349300204 651901994 669883001 544145317 567810563 521373734 607610474 623738350 504693037 83033087 11394208 267302979 417295096 589418618 920766659 513903764 83255879 741374449 85261897 877340931 106850037 130389300 824965635 850668755 906009890 397028035 541593884 197526495 628710734 889304526 247477847 471060278 380925950 30432441 310776485 519806194 90709153 241056323 575261863 525596738 203150285 965987777 432569960 863428398 521248149 357014438 47239633 437657788 856179896 156808023 52908071 266263100 621107238 179610357 888122242 895496115 708264336 887368475 946609125 820475116 550481043 889540673 875140061 629397476 921375763 635909817 697242109 619372605 81673832 674918062 860073897 389336825 203972247 207401219 672719417 652363981 849412462 472241834 93350589 357393622 375763145 781084979 630997453 137442895 671017334 169684955 89882761 556463672 52027609 228682011 400724288 678862726 891186128 434951448 896718567 588118920 317941595 748093686 257503393 157149979 704442681 415588055 567313764 164560171 639690391 209872657 387139123 802600258 743324625 619521982 591798218 36049164 993924813 678589921 349095839 289861989 619823828 805520294 491486749 101226459 764359355 341981119 147024909 628218597 542911215 209154368 836188932 929302802 510799523 974929941 109139083 43353908 972854955 195989729 3840090 809290752 606330567 523655789 434981341 501672294 888279343 277901550 172744642 120137753 399656664 405416123 814682498 157092149 54831741 50836751 313139833 579891579 324519527 353464522 506181665 911148386 3097487 391525491 327082316 64006475 580283813 376345982 921484133 698261593 89021154 343235367 822409154 238440980 957622477 316328463 951403441 464039783 276472789 986936066 656401239 243574448 371103352 251409819 685567011 499532403 950318536 710110943 742481335 151992404 819636547 763051449 101220805 121119570 148949905 565792649 517944464 865116827 233443991 786610890 79757665 799190438 390433273 957736168 238100357 34848858 258969088 435861790 732814566 132965352 337958898 594017178 477316661 775798793 779034210 388274618 194415567 812998226 736885678 522513751 654552119 925569800 170376608 437736265 935969668 626059708 75707119 913083795 297983879 726379180 861515621 975598184 229731561 903002484 256834516 959587137 943937517 780795192 96827271 735337182 103877519 412959310 920326291 279265199 540086192 572721211 538926398 807245800 204857726 385070215 923992984 797415161 291385399 965671029 796453455 742861657 419953597 908974603 23913052 931720083 726870444 970376809 248718601 821007384 865542383 225580240 960713839 509140273 871080611 292769395 301570198 966488272 831124121 244204526 424595465 845815031 596414081 392943329 575846560 377848606 344913861 131849829 109342082 620495399 231009875 592642214 372875710 364373040 734894546 369164172 928280796 514097510 59988793 877458115 621458759 243060340 149290504 413596419 44199896 228896131 554160381 802066534 542556291 570401238 104216752 88901156 996252079 232830061 251487067 705670663 905389492 580568689 293142900 905375790 936975698 140742365 924224561 109864774 696053321 717781397 972929425 146514061 383302242 684814289 265714654 793461532 769633500 592468687 529265917 257631646 746321758 856779619 9708137 534269529 16003552 602421556 704936776 671505899 709903045 59686448 995739362 63310729 383224870 176210697 72950856 16581631 534334695 845686364 808011809 104866149 142671322 442520584 531512419 399522776 836014132 417670323 516116579 286712707 457869638 329802096 373892580 138741806 191916826 845381743 16338925 802655568 923366675 617766258 890256207 558382316 15950124 300639963 356552970 761921462 591570736 509684658 137262438 106473779 914877898 626862482 459959475 889581577 406548719 787785779 909291129 778164704 736974483 548665622 192996105 287323778 461524406 994113021 355482068 589293392 436748320 407478029 767973980 560597286 662510621 22562461 886279740 255264432 863504699 354740656 808467972 97646903 173586815 330940716 51578056 531263946 495482880 434064858 370554094 789612355 854210250 826991414 639819467 889670123 572872707 434404920 462137389 217211926 890042107 595075024 119911149 970009902 401103460 138059159 630062608 962437770 271694484 639434196 555723209 938418654 670176114 437833800 308855455 292974344 692339608 343543312 932098943 336196082 52320040 260679533 709551956 921967072 810582693 794328490 877236701 157236098 567971963 893167865 511766456 931731033 493839027 943168310 94882751 191973462 718298156 110638200 493213687 273377878 899068344 458822111 99108096 144447769 841352768 652580499 202718889 581116649 502083270 414722894 786167315 411962781 98340353 128947637 354190724 369383829 204513958 772972112 882740972 188883133 743052691 196140797 261410930 201776377 716558451 247838019 74552656 243209777 268464388 950897843 592869526 230242533 666611527 323137071 360719087 829943105 74558681 324836916 38034044 388542484 947298183 572049279 308859869 980852757 732678466 925046577 336350468 19854394 557164659 4759741 868917922 111348829 900487711 722442786 149179991 651086481 626468793 918846310 349620884 748476306 104064727 78718673 360864439 659862879 5808624 329004254 822068653 233915677 284527954 717808141 66343919 296843021 621432176 872703365 247756573 310940875 358868929 890983231 861569446 460281320 573755374 226418235 911546442 126978202 199277574 544970685 111621190 780569734 938684653 334893687 229110813 123071318 986348785 29478135 78307198 990684674 926341124 907831348 667975883 801112690 191207368 234367121 239863343 365795061 842668185 183341008 31888741 674648714 321364657 736487922 841619506 319266887 205930878 806470873 41614730 47738936 415607009 583810344 983577604 872939688 25913990 512999463 718281647 974942020 763009333 953924396 91148356 672224442 858343491 618150390 374753533 298367941 660984317 406221452 463493697 487296500 158916619 486855608 941643526 803217891 304785910 972476680 596408783 469785819 20378187 549072058 72517250 724599319 18912951 745692842 744151328 186987697 406881261 983236428 133790998 197950041 901347147 523869380 953788918 730975412 65507171 144325739 92824733 224821955 401372536 35797049 116770182 513803642 930194820 429506746 95274105 482933596 894052355 541130071 851646014 244101120 37773537 196426158 764489867 33911960 504185936 85213394 803171938 824971778 706885136 610976510 594870511 421221912 614681285 275895176 34126140 238923636 292533492 624546686 404138751 600456968 783769036 863013889 153625835 449032450 870520333 11122358 430903062 86854679 603011108 100650597 145889530 849035299 99904729 203149098 457189920 666417772 616688088 99823604 124697054 695957831 557035904 889976051 76556392 304001101 606837768 285826515 452319893 234598079 848108659 45234005 140422547 506004509 141247022 283754475 799237584 155787865 721451103 418597078 216575897 120853090 742762713 720054602 8178376 714232414 625557710 431043397 116171213 201955413 891733375 382531476 962120883 523216256 16265932 762391625 521785884 694239224 815812957 117037546 675862343 54303982 470343124 564936745 18936844 536952388 399859890 948467855 300175392 52626998 883345875 792228939 534030606 231234926 296906918 381820954 997314579 68798540 494992975 27610751 18539533 505152099 793132353 510494541 892584767 780011684 948500533 978735014 853824579 231725889 912436660 847327303 936705519 844245640 727572812 633536623 138968243 745116181 750245689 491768986 810791645 895591303 601910857 347106070 928231808 938396715 960859139 790989939 285545734 865031247 220969289 639104952 146269360 916623429 672426419 521599662 808271943 658047656 482086698 109447521 61509092 932106088 435982313 419756473 707026022 89772047 535393954 528334451 625975656 885610263 888238813 332540670 602172926 519880816 391215127 415876316 841651176 60344135 422441802 567274956 91476284 192106346 510422267 404533567 884932582 19622208 878445473 543809356 486836906 817166124 11998438 700056552 763069761 582422090 143603083 527105821 294423049 343601856 72978259 101614977 115285147 341372249 53713853 752712914 46741974 225394481 374432438 452701263 451750082 602360646 67489056 94012791 467229640 291305797 100627978 890803757 103985487 719729083 664137167 131223067 208760206 447318865 841424660 257575035 297028828 233667474 397740660 955259148 290509462 954026120 853085387 262483668 61371291 233710094 132431915 999160665 294789083 326057483 611885872 173307293 754599675 78400982 528053306 456265526 590436675 527274779 354262929 487224074 168552796 858295267 870111017 73662666 519998993 51211464 232478158 817345934 894693509 972551595 599002071 172426756 153554516 635613394 263651674 702985439 554832313 323269217 351835588 356331011 445696982 553667848 338123680 971299231 344293741 904955087 93345851 733720863 836671257 832580577 390299961 465881662 527342239 615245076 882884437 287070429 622156959 76214491 430085760 183851031 624440378 502911503 248175997 188695621 297603248 602049583 66631938 512204437 629188120 299571073 403111766 815698327 158957573 887392605 311641402 847117219 956163583 146687775 589983901 45873232 806878893 550690832 984420612 242388216 31295898 119020130 725649990 672412551 858159124 833236292 168205940 179036580 741986651 608932037 819838798 416573890 46165328 944364942 351691539 559837229 907802684 718724223 953972258 228297126 859350452 420082967 87879390 591289403 384298280 855488240 771139231 866869712 484890503 263802274 134079209 593842025 14701956 362554152 79050113 858341541 824285858 762946775 65071033 933142779 340771128 671270640 165247178 389675255 966761428 77090162 266108775 554478385 703672804 70339804 994470695 612555881 721160199 36840121 521997477 402853755 156758799 451229978 704253430 119272896 447582874 837685406 784543146 790881538 28173737 978496444 667414515 145084365 446619703 561969570 59705314 385666847 384255982 653611441 6152823 624529992 439677149 709686087 140202791 232124111 672824402 550303424 151185994 211392350 207555286 59119416 763068164 845214031 784106630 199205696 212663097 143676844 591862131 459183617 442841299 479210981 699197264 70367949 251683549 567264064 858146065 799606749 914975901 315966159 71675797 745944167 958979604 487565025 878432853 743363255 268610796 644334398 356474996 409544859 677784231 749958536 855843748 83759248 75112166 823059530 400403389 115515142 744586281 692803835 366240492 897984390 98553144 613652210 229742294 116524328 812338224 237129226 182354693 217585156 891153956 672536537 816240242 163049550 471890810 218192056 909114516 874214568 519148772 673720669 151306438 839451141 244434512 124297401 963178739 612758201 972038165 856173851 108417294 516708533 112005336 533784093 291390817 503115294 546831742 250796239 556088756 193840228 338659687 157071821 478566410 16633979 159057161 218020098 456631061 798189940 469430413 527171944 50964083 263971408 688043313 57898937 828670208 492614604 783280497 851313957 377331234 61354699 778917254 47427364 158623192 401721595 493990397 360269031 807832408 257265092 851809195 921128331 450409387 218718127 389697642 829343809 881315813 691313138 949103292 217558853 98837495 431362090 498683990 585943306 597976213 169306844 661114035 773399190 116835574 936525056 199485802 531920738 140421163 860937469 106135801 656280181 837295123 447677795 219179622 150977518 450597583 543944749 366040957 608955771 796743471 643691254 272783635 824614838 83598822 402969419 48418779 349443407 822804161 935849869 968585088 293447248 843114484 148648642 522170937 549958589 477904045 602364556 970979295 510561047 977184973 456577774 217115229 367466992 365065265 785028421 114481638 627254169 7109222 245742552 161087222 81864108 760943123 184464229 579614533 854658677 297792267 326388792 58080250 923378144 341136488 286028257 471276161 142248553 835112309 899813343 253685740 102808741 678362925 553628561 776798153 320983603 883429489 710146281 869498596 994197956 366187685 156864377 550742042 642852607 584183004 511235387 830999952 715447864 791771985 743410486 73111244 107362535 991620746 940304236 944034683 96210355 259450957 479673369 319006993 486779779 930737631 77893537 654373395 81242361 163578028 60159504 524402815 775120540 697764016 730894205 833912928 963004015 803389277 165704292 898691935 73985704 854719027 885511472 127286070 742337565 220195006 502225856 251042472 600778391 146565523 368243306 469848721 343492866 424742373 917994506 884187773 691803689 330509083 16421889 623860159 590020918 587792186 785726182 754659202 561700643 672269283 535278205 947693025 710640962 874747573 916166117 746523287 483305949 641053466 514167267 948148338 329994259 751225530 899499624 23008141 996240845 12390637 972240866 913292749 834019451 337020673 192318801 499724960 616141950 760662123 926086443 389729152 959634063 743390039 351674057 46008006 434867500 103188984 982960976 438164238 850146585 832504470 299609673 432266971 153239170 973945882 119404728 886403450 26508481 155651201 183878547 558713216 537526786 375713156 183653458 743069294 502716467 40097624 769009192 993505729 976922984 216300278 415566826 446440042 101242020 282633111 590625350 74485854 266525587 185518825 741825826 625887281 960831814 450762239 896499390 278527536 880314636 620278705 756844809 26238963 931596298 407786510 232979050 398969994 394439574 129980088 317942064 386009433 327803943 672981143 618935762 643923096 517397772 974169664 847611312 491805991 622788677 552134042 457730308 349486420 774121191 454627771 658342181 2524458 80079759 89317848 27484401 899519140 442316317 352119970 302183819 714689440 863585297 169402572 807303735 336451058 620944768 859193328 738107804 197688251 328038071 563094162 932927488 811962457 910806932 512701470 254536180 374601776 733326560 406371967 949248803 691665555 463800405 913109251 774513997 945058681 308852880 263821588 321250639 167684879 654187328 190096924 513334251 122146219 231189369 938618146 967061668 777848757 425108228 300735357 303646668 130493217 287266548 701212264 130326691 141313176 200028714 667523048 581628463 376990843 711748188 701634935 325302034 958815750 167859904 644671310 73436145 372922050 195644412 752416445 730793274 587791581 249996183 731202730 600283244 739254489 355373582 33204331 202523992 339664162 536055523 715777425 912487877 893557731 419057426 420644500 756921249 70968667 838460711 521996447 374538110 662121853 934049586 661702362 94283250 462939271 959895322 106909105 858650655 775215328 886391986 606534841 320162942 377729685 348610477 360540587 529676816 113592787 407059095 272532829 228654007 659618814 303159356 29620537 214188825 210489350 635475851 864760289 414020928 654791418 256652740 907805385 257200853 286584607 326266130 417399254 788175942 145880656 374956494 224474198 227438213 698001014 10297188 441957434 405359143 250862001 493414013 113163607 288739979 818505413 539058827 770315435 247299619 156236372 426915685 797500923 700376199 475543405 523573940 530665769 877513358 450519619 116982316 78214628 406766415 866034076 92716383 588149516 444414403 622032902 171209078 938441763 121309694 568367710 443175309 231671758 781340880 490700375 113127454 833941048 517410179 893427555 489389235 267705425 287368033 478369937 989555811 118659231 96532119 98645699 30246848 757618716 602402526 82238272 713432648 479434216 991567591 827341558 911918410 171101518 616627588 61087628 784274198 795280884 49483150 78071756 887740908 455695616 281479926 27246328 600400680 837348462 957017992 704898145 392385970 851690984 790138981 727318682 989803977 497567124 993368222 165645875 584983594 496836220 658917949 62348026 291336963 581050634 152738459 9384815 525679899 577561936 690963199 238479997 728758428 351692549 398052411 457820002 693133171 667780398 390868121 493011192 936437152 259510842 637514846 834999196 311237229 148512404 180037881 430694449 482840934 249247664 790773734 531564425 807170348 832189071 904700518 358066831 647251030 50020627 603833452 201114002 331295008 36073312 544914894 320769048 296735016 906896502 167592422 489894321 87244824 334714754 698488963 49569285 965270651 343759691 8190845 561299605 436313890 859647075 71978844 68618001 980884177 246415427 368023123 587051640 590479994 811978901 211271717 301213201 393679629 421784037 655355934 984383971 364317558 186540102 782032493 360654752 429919183 159189117 201588645 675319559 558708031 723761007 340111111 983129714 606576765 466523569 233882927 990425873 87565592 303266670 897948227 123134192 608681607 260129574 858831745 488052814 828070972 835954408 956980774 410967308 928244677 300917106 51091070 314116423 934967951 107654813 908963181 762191931 920840021 418744700 152942499 245317386 166793169 491143837 419855725 737568574 273940925 180603991 873224271 557317730 722788196 836343433 267499469 5092911 933039587 706286355 184639227 777131441 762755036 434114847 310876428 193705271 35094408 33799383 280426 316337553 416460164 447898577 769697054 892518511 853341148 75857274 3467315 681201718 905357976 721359197 459730215 321263376 617542635 4190882 161987517 429942268 656037563 384843548 593400392 320234114 996935882 248902480 808321757 879977774 111929871 736299319 51092446 491999780 736106103 166874876 1302606 54666354 347436515 563333894 129558791 802871236 45657490 175703577 126075684 951853327 560859650 815974353 768480145 414588353 494653238 954810052 613378248 207292667 455275167 939066339 722018098 180928430 883266079 52136429 768753630 283738879 991122486 194837502 327949938 389707180 167689041 789072022 434952021 606244190 427431345 416279806 835270115 153160291 437071394 428431880 621950148 420778334 821368431 478967422 229542221 816423457 846497005 739781064 689684493 418792364 817204806 621638409 253250297 528893799 465974502 95960764 485617038 52047938 551699225 969393317 603802352 953659881 786067034 56821982 316819869 134613149 528595838 239217556 875756288 859265193 997131254 723471203 482409926 467646821 358194594 564289776 617328895 357165298 802951216 330301613 782261843 428663154 734760905 666049972 712020765 473914722 984145439 862829172 9454464 179688031 825290330 929311412 112707207 565553431 726918806 769444694 287501898 858826776 93980795 445168105 968854728 887941052 375061075 604508184 583548255 401428186 284129567 228580585 666463558 934710571 940036079 973609663 160499674 407512682 348405306 29469132 258480152 912648150 670100449 162585163 564784575 898041365 679247522 652378730 502233452 964639162 987054018 178837843 992110096 286110445 930122156 808724255 309544404 604429930 711815748 247645320 396310295 542821209 733424170 719721537 126702672 189703066 56908294 526445597 829007020 986476779 661278090 831613284 219329777 929906239 987671245 16968093 166304634 339235241 249918577 923959037 11144597 964357165 411167865 458069653 612139468 240200883 455507196 253812909 494743069 423900016 527813440 138923255 477483590 941779881 269337161 549737526 299215233 283615145 874073764 526877726 427570611 133130115 485598971 719891901 574773796 810078165 565311407 412274765 442771519 796432324 668475061 824329473 499052830 811799826 956001794 147535533 798234853 325699891 64127556 597586259 616857333 559032648 235470335 801205548 115960695 329848589 155417012 652364206 432445851 995332474 843293826 920763803 831675245 192246564 844889738 312007969 420064864 743302852 201283535 559905744 998670288 190449037 642255563 351882396 496054154 76989977 295827303 267565798 339485750 838232143 140665557 447122478 225549179 942175983 911501948 687039305 275589978 272410188 325767545 557134238 451064539 914940776 904486361 78127603 197422449 382135102 246470515 444961343 68248547 592248104 105810953 175851138 889501460 289597694 124947365 832375495 479041730 795063161 121734309 841842913 730933760 874796304 965794214 85056184 155392479 695677655 905934145 731463204 673103423 961628981 199946815 802219356 845222275 223524791 540810746 129388217 651570133 991650766 498569036 638148554 471118339 749589505 337023603 469549864 951321695 779263792 568176254 398404682 459271597 536771179 477705479 256162218 873555286 24296331 437813313 494345235 667495240 575954940 388879060 97180496 714273231 259501650 933841415 374117460 145690480 370642575 58794575 607261296 709831462 588858300 596334931 273263127 437912706 33019266 742398349 569838290 697666681 929634211 490682292 95705151 898686017 182590247 926878510 111421524 896106030 242967111 785760178 977777238 68703571 374645569 714127356 499877969 972301122 478125155 163784341 612900085 272377239 401283398 381033339 98869111 368248918 38784506 171975182 558058349 166699144 121132134 697060963 616979704 631047319 265655791 216653689 926815099 136549250 992827150 798345292 187497857 970595216 4440497 311944651 461174944 852789137 823980551 248470352 590975407 704100676 44164968 564800312 370055404 869734262 397341017 313396097 932432771 79782538 24979188 142472015 286304464 323621043 89260649 558452203 389520052 262276783 701549564 632243573 938177206 468407657 387134697 792247410 288779429 690885507 847138476 231985963 699078395 575834002 352902488 403366938 734013978 481206725 647887102 299473844 356354139 542495223 247687516 273407775 902462487 929569242 116982531 862420263 673758713 875201636 735047541 74056961 877402361 859320842 877125378 690591925 118129151 703815184 328948711 292912752 256486328 498804808 19560372 313072120 529286351 630165463 991346156 56399422 87062500 226132193 259239697 732612120 737391801 147652813 282587146 997353212 190868654 707809837 497252216 435242246 195402612 619142006 540063037 248233920 172802739 65704774 135752292 6277055 93457428 779656771 259115590 221417390 514963840 167895130 958569397 111991272 3056660 795458239 604740885 240842022 673368249 160147165 28857025 825729956 626310256 333982479 183655226 844082320 960021197 562092646 986357156 567155571 58124278 24140596 625502928 645150382 143741128 963757333 994703687 366129884 497781071 566280763 348730995 423879288 2028927 753436551 461038888 606206763 151780372 756105341 609398468 610844988 125458298 566621429 900636275 801254143 80217849 920698530 586450648 451210525 939401257 16340922 115179389 156267186 259922835 968855497 40838567 451941411 98602483 699567442 666232138 564106988 882591009 838593822 2802988 149466341 763652677 394864627 975499518 873980094 299325311 248464244 525993698 645667453 876358764 17889635 331509043 521269810 90082942 228570578 153951773 519178572 783425539 789804605 208522036 213624600 364146843 289239382 200618609 874592843 583209948 162142458 950602214 962861196 531973499 856293644 117982095 713927484 893226448 388906254 984429774 867011395 538907422 626482409 426130852 240546824 412982545 363014054 608545531 261231594 793829868 365482729 745978658 752519483 529698159 341310976 4794041 408057890 682431348 354724160 7539678 981573938 682296618 69041197 926568188 264422722 65408086 972327242 118010995 836385968 614722737 986676876 949061412 727512703 464240048 53704009 805699011 338104171 59535754 75045002 639363791 979868590 546437725 529907054 646049032 436961581 522625814 171026485 5808234 445157302 374008999 437643443 324683094 525351700 816182765 896756323 74809513 329070577 507867332 258765157 398695111 965770234 426164074 915844173 574645736 93705369 957023196 956576787 1967290 841886038 684799330 514683783 35651526 138286241 601188765 160064754 610604175 344812298 534992726 512021120 466404328 225296920 124875567 923686464 654025415 852386729 826962851 59045963 363535914 880999359 773877650 262556142 982788746 646904586 853361248 228469669 420743678 243856910 630207777 840656936 443394669 695038602 978716920 755854653 867638106 569041439 464815347 533188993 247141237 84457393 853215669 660015268 719343729 65614652 675540812 261142412 678977693 535909013 267387568 645831914 297367959 104387171 232179092 361745186 59266832 666932579 936687696 892784677 786224036 624743133 193882766 919924792 255138120 185197689 445529895 176085566 189194214 133890327 477468386 598261399 296068073 150560608 520338600 330304034 593183220 749268280 563509849 568087267 380005195 835017330 476096685 305319177 844290911 223840418 499917398 949660552 847108049 44184260 220162005 363571826 266369455 145020797 78363145 56778116 156548263 786944766 307548695 408853441 958697544 22554236 954868829 566501364 412937448 728729070 364430679 14512597 694781346 558055332 356070443 476086189 260379783 806779327 107853892 730059350 857631134 776084090 140943619 750634622 475056223 326945771 960523434 507763301 474876157 326461043 254719773 462024116 531971358 667897901 729319947 362194573 972923060 341808299 854291917 579783227 887300961 433210164 851709354 652718173 900903891 545753534 874606856 112467864 598098480 785894748 812487627 735115719 633363964 103223827 359348323 404884384 448283235 393352333 837580909 396740418 879177095 586585759 376000788 264474311 404552159 164438954 967030017 523016637 507557473 323093822 166069297 532384048 179829777 617202666 626179074 695016659 936419518 41992898 469618669 15888032 689890078 478949331 498024399 149881883 167034527 794563408 946321232 424209610 592014487 645215823 276071561 337267051 268639047 668643833 328093490 579085443 240149501 618241195 552451723 205903287 58279627 371983742 351490212 45098137 376637914 439579024 186749774 517629732 49427548 879874451 656240223 608087398 692391255 641953166 329215970 422377665 930678443 519293547 49567052 779608732 882760049 376117068 166367309 408406015 859651977 581264933 187007531 673048461 873629653 414970651 368731420 949011522 657132496 581505275 379779175 311962860 187080263 225209359 587518848 260802149 340390925 889126173 269453792 511851081 244023330 729165813 329283123 614343426 202207222 957711989 864638715 726889605 90820138 629294723 12952399 793297941 71004437 358119462 380911726 669758808 366878290 550583296 802267061 747642060 279361354 458538633 288885295 937775306 312062183 389209714 883651322 805306881 675256234 382877837 57269530 378180862 260868079 859053929 195796250 984553169 267280691 7239028 140542203 339624170 293479153 217294737 421385662 404174237 346200741 874839065 486476367 586529123 388158850 297791705 795814740 104655151 108490114 946583707 173069036 92411779 765920527 673645476 360915667 999512525 740961438 814180573 863609850 805529340 118108190 126925250 194342154 340748524 684417233 480404613 700081356 311799023 813724301 267582743 976066995 653842898 649519428 629887880 255630753 539124065 192098733 839982998 276634813 904769423 865496984 712048489 840279418 795876488 478094223 906441990 470756086 349124540 115522188 939075517 752994039 326822705 364819507 822190178 398654848 829187422 702619514 47098044 257383806 793217730 307226098 2665547 447107565 818634730 678754110 703030851 514077068 800276818 61464738 731849426 228462191 879609959 383167681 162825470 658366933 173315063 856739835 966503177 661638319 920610641 705466723 636267394 344271889 990179473 272661975 421953034 606556757 611842442 891230386 405715190 7957231 621797004 461446013 907674466 827736623 823599185 598041154 236701039 17679569 78222085 491157497 232653762 714161403 390228992 460668258 967674547 616065746 698592000 686174771 192356504 931251552 15654028 138893244 394240254 520747875 892007883 439620129 817093696 853447684 566161557 894942979 322060373 953091077 495534076 318862938 895801218 29637128 665878219 319094294 863412743 983164094 394778327 119816227 264951964 180569515 6738286 664380138 283035962 195893159 381741182 352468582 716362455 941791120 85119746 557171538 816680650 233178884 137057755 879480294 129639554 133328226 150914018 695203181 937089622 465178401 424461248 752382688 258488557 585096751 967731424 731308943 504209163 430761115 99919572 861198193 656013831 962099286 668372611 320449722 846588725 858602379 482824303 745202447 934862334 520282901 3395018 842567370 778266738 150318675 568988554 710256923 798799157 319387219 87982990 932120940 976715260 847588223 255387795 115412352 416334502 781364986 871562469 683291630 826964912 532814048 19458114 151228999 889351093 940184932 672117549 231760706 656562341 851817992 488058339 829366043 836908467 330333631 57749423 577599462 518472597 996893958 500028468 553588692 715808377 468584028 963185021 561857602 23922448 191313127 675641150 512213236 954605981 930243291 678699306 936138140 496859724 616285647 132863899 275571310 700152768 387611462 671578172 36996846 479483642 700496005 170877499 3712029 846061454 42620333 966960223 858496636 411888099 658586531 413008521 69227746 472430107 472262306 340943904 210073949 79819727 500651033 175759488 859969979 362817514 747600723 977634185 960494567 470292387 536604013 810654130 530118659 764592942 376126024 781404804 653545032 756886949 996402884 312559198 572919963 731375545 166639689 758641202 159915116 341497253 25312262 47478944 439005334 362242669 706380432 548345197 533069231 808702047 323616625 146533615 703265971 100596605 774605268 133008568 184899956 180374262 758917842 10541270 166617291 649316376 856050354 988483604 43669098 370017022 27153409 580076599 849484206 381375 671554810 942273073 252148389 751633710 984362606 400317809 842885419 181007911 222198208 109255360 929253445 823192710 402922206 205589534 395065863 185273869 461622719 827230537 207235880 349687056 459381910 416808254 813432783 494485515 309103381 947933767 86581123 759655395 866652831 413772809 668549500 927188005 895511509 643580824 74542537 712104266 298962352 167650172 74258273 232319822 862501664 224470797 430263564 903744559 885631069 656244746 720967961 846776962 929061771 453490548 332209437 247169247 107351595 975603099 216110182 146742263 461199885 381440256 944027813 545269634 781100300 332903870 139842382 648103444 487180442 344653689 211107413 10270359 724393052 515552221 765198840 491047938 959312415 469676307 127894692 781363432 165162390 908836250 48383685 763824573 874397066 831371814 23186105 335553915 332280469 74344136 688561314 361428208 9744373 493814846 553145187 80961386 789583591 946167872 138698813 202535763 757586682 310344395 661939725 364233590 587851627 366799798 841980895 536942703 244245890 501560817 165187819 844617746 468156460 992225046 760673124 389201690 247381384 694898269 934942175 100486159 786742437 326377785 954466118 789465342 795303135 928620454 83091147 996164049 376547358 270758713 993239566 982754952 870241804 103161800 741356417 509388799 75814345 121380738 504190283 125236838 528581046 71522283 479592703 346780682 470529142 686823008 624576568 620943723 12847272 696709151 171694224 487886777 532754291 295408173 187717912 37318002 681635218 895073185 851390915 211769326 945138593 87510852 206866376 322432514 157403840 801203442 602192300 647691679 830479787 285809181 914388972 630346885 956181390 694164350 533164057 852969311 396697461 39781003 868164684 471401006 953856523 786024048 576988814 866204103 201089660 383365434 376511730 398826663 20606045 647838761 880160853 530587067 893907676 138707266 325576485 335479030 336181762 204876082 995924854 850040182 42889213 526816058 486884226 938926044 976094167 15365599 410571110 12409217 333609038 616469202 423036865 667728808 51938835 847705178 820542885 371341327 710624326 673190278 578140083 599694672 364280221 336336533 226362615 951089335 237076346 584951153 68707382 377649443 147787127 415139265 58438191 987603947 671512396 570792508 411306764 860535009 119592329 386234065 86745165 30877561 481777850 146782543 128010706 983527544 512698957 312046756 717055700 93253406 986917354 811814088 763599106 971839310 151585979 624040555 455963344 54390683 288972883 10646292 694334707 419870960 845087146 211473697 744359660 126675654 301610452 570654099 673075597 698186828 686520890 502446060 646701694 808923943 165814056 57874390 804263737 847057936 792567704 831519691 800803462 434476773 635548864 25566072 329860725 120544248 234841600 669566549 335386984 257569918 704096011 914256114 173434929 3982148 26288248 430768314 240126588 262145197 335503691 328943525 173968882 638302197 652850677 507521855 632501063 564586598 581202491 186712559 416983091 794763807 915876725 905580531 67713642 519003151 438590271 231450506 389343380 691818834 204944439 291022729 888816822 326047145 144065109 363576366 859655600 245773751 393976683 689577519 195967813 187027459 454690836 824785861 637599278 84669073 330827641 711573783 137064070 158819309 111225152 223176274 563110057 782613757 662674490 837050305 851259721 685908358 101827937 996395231 339966836 56318484 986136445 840137253 208368116 475771208 359673549 643124713 867988635 227750641 289586320 274462775 799306068 219476946 934557559 149306164 622751696 799244227 721820973 157519567 156921650 377722243 368167837 482984193 365008960 410510967 329510331 102309908 854238973 178224224 775776676 246358394 392264081 805949740 937466465 704382154 587180482 906816202 114400380 142816361 163647034 655246428 347385035 60201368 502861527 152333745 315803436 806682736 139368455 458310738 865459523 171198032 282730946 255609102 271672642 1196831 962347411 546516141 347192199 637990049 560133509 871617911 654883609 72090328 436247363 700072162 713453208 867845753 429003976 548857978 20337845 955765558 267180411 117407774 342685203 224853771 138092479 263930581 630498413 861558586 595343143 68190679 134576932 917339179 954109137 453770590 503639075 697047548 584539843 898644210 833889636 307427106 125771620 572240356 561391107 677231487 312091762 85458747 795728156 473860823 861747541 88994779 716910534 753911476 351845868 68804189 340111306 328399067 987289126 758205867 353620908 723814957 265129534 118271984 284062717 209944510 773700549 418277297 716681291 340004694 515683962 65728666 680505514 526069949 461393884 412494154 608083466 322623338 206458447 415122940 845042390 439050630 550193788 325054567 871256083 204287110 975442692 365423919 571512341 31204514 211418482 397230302 9510027 345334664 725200419 260493781 541747993 944091194 103716645 705189720 88102005 505532065 66867057 606754356 280368855 492508173 479341382 651183734 935525623 562074971 648703542 432427848 597259257 178758587 160334353 475158167 481049665 525313673 911638152 418300610 489696482 424531240 335341977 33429742 414212512 623825160 729564072 592654241 321141240 254129892 66993891 240802765 714460283 136211147 126610068 145883287 990891457 140282982 809620657 19304693 973319146 136122641 277178907 313626207 290615654 510907602 364941737 385557951 97446716 550730304 398942699 385878859 903775398 12700460 231027136 255825080 763264165 131793366 397485568 141471537 499385458 37802518 255909106 584554864 870442341 367134709 293361336 499002705 633934497 753183424 410124619 738147830 553311859 919454499 892784214 508289473 180297369 564546207 583176959 704528320 700920958 544392111 859239922 967348363 203260307 399994583 595223136 966232270 288000119 782169485 657009934 320749102 34039475 196415188 680255584 303072035 172193971 577853344 101974335 321111180 775248127 621274613 348529559 156967157 588327581 841845325 462288551 376594100 583671002 462398116 388149709 270572989 608034808 236080060 641844111 999876223 143331429 749569502 748720056 573974838 802431244 322376380 812987241 806399159 368483553 665636040 154447355 10882975 912867907 920131369 741575908 878101949 41977325 560534897 939154024 141216712 61384668 872712832 824881392 491316402 856177877 846518895 502011767 481015823 282314936 796806881 665936644 311853490 259811483 133220484 583002093 157045922 137966073 665267008 114794749 41133297 76887583 928009454 600301528 812366617 485833857 8255196 873092125 505554338 488259699 110323140 399256447 520494974 237913377 966086135 989250414 915035436 58044295 838877742 548518360 360637386 819489822 899311149 655680864 163711164 939117919 760648807 931661672 730708449 653843377 640810678 922922212 115707891 177196277 346046021 378929973 212673245 745575918 470631484 335846427 534586387 246309896 625414423 832368412 170781360 752537102 102341295 144065659 297624421 665425178 68209368 187819534 509295149 405279941 34161419 92185561 860992814 787539162 477392878 7162530 649480308 397767989 541784136 729661521 74143508 584506059 150292692 701453733 286887982 457730585 40550926 305817348 327564692 689153454 706161473 994200325 83957598 496210997 979999408 5072663 464434716 956930838 488717933 648332753 715312024 195097791 618981980 473399338 353091786 8642723 419714958 844279906 693862124 375795549 673069176 658053410 535805697 934638153 121610628 482486338 973629334 366132282 107675048 410981180 817089049 668307909 867477870 15023103 15581508 815308060 639471502 69777022 329899123 298587511 636327058 300341406 933400131 286218188 519955714 659261484 475576790 293979562 711601018 723121131 735724504 456543320 879044021 486604412 749151169 299163361 910572348 363654243 119563104 363561303 310398469 189946147 958461469 634074999 731670160 377477632 476592758 911439841 118346861 14638851 29839053 460365914 476512490 741541853 176465128 281701461 966054109 607197144 482030775 406045491 269446261 759027692 262187913 461407175 30587614 203251859 120613372 971450903 87131976 760981507 745503211 127557415 952296332 624791522 40712121 653685497 778582675 751466660 903768794 616954280 950096903 654630249 430012114 211741980 248889019 752110255 511655457 329708136 530558545 845487648 604213395 400347462 790031877 525378603 43866139 594746003 702606433 163010699 773549045 935084638 199691674 808948914 320935681 637756692 612603750 496169782 50728 417014016 796246726 384526942 5874701 672374709 338192035 592208088 249145864 584691844 629435126 220192388 740513998 696260746 784316380 827021022 909416185 965087437 672013695 48924425 863698473 877816001 122198690 388589514 86067324 894058394 291781626 583233751 891599015 644638103 963425403 421294100 760638405 913310589 370084483 458472473 895429916 246752638 405333911 992901526 645171554 759966586 530988665 22754578 676913612 864966681 297864704 773082087 971964492 607879042 667764991 886570059 803832200 288116013 897874399 486961667 416154710 128075917 283259880 338256708 829857867 204960064 99921489 600171298 146746233 141247501 377228414 246097124 211646326 117033869 956442272 557279206 81050499 605214778 482614197 445718873 568651360 787975743 340567206 968804216 156317476 224278161 943256354 512318070 989956460 574162624 22458772 490175871 209818895 264421908 881619386 813448068 166663017 835377790 39432955 107846160 793652675 790349583 369396609 1417124 450422799 279783206 814122092 103663452 251432714 369093001 162364212 451520500 278444482 235041115 404189406 328605967 254578980 899712584 463837483 719883735 320527716 627415872 525782749 862036909 492200486 876965549 681463625 242957127 881995089 517775328 23870189 767846601 821939987 603985454 706914352 940147658 548465650 802196657 750157895 980347375 924802798 936075983 865888881 6438717 317408540 188332957 607781479 44961170 914107645 520345285 504539005 70996811 208213867 982047839 827886903 476166231 814488840 190808847 85358453 92320835 509806635 475127703 283085403 379662837 166457126 667296047 580258961 375703922 729533076 571901931 848446654 882981448 402277973 473467358 373606207 501318676 961371015 478775145 689158015 975677573 99424178 69312036 591732049 396985573 771853389 253413037 380340674 980583042 178239704 14608952 202224347 647923113 958364911 516121342 974107876 835773149 227630648 615686810 393460121 282185074 231192335 565246269 847052552 955476403 369350693 806319701 401161558 513620972 219869291 768688945 498759554 178715736 127366637 733298241 499014255 295995882 503323400 767722297 776741410 644396444 775068500 851985409 209762719 692572910 943138133 103756314 878747265 998519561 675034744 573521586 306521832 377973150 500774148 22252100 990373772 604173258 184498952 145422166 834030681 952080955 677054442 465141548 886633108 161042688 601989877 265788588 178427757 123857092 561386772 582811008 326172023 669738071 330876423 29829753 831656236 453720186 4168690 380519539 524935184 218311893 703482819 346044524 828324150 974847106 502802867 679217594 983224554 602838028 615562773 965664938 527688390 320331563 684138823 200056614 494600794 296631373 980098019 686479590 138764720 678046104 850242462 53076499 59154935 880793811 536872590 999473068 44403797 182861617 395465052 534223936 414779561 478147312 232836188 882193281 56951648 617263169 824455906 517453570 674803738 480869698 766773525 457083175 669642371 690932653 446277837 538916849 710999591 77108864 706668806 794329155 238346587 449610698 527712012 502782267 861578923 732398393 12996459 143277225 467213479 933248428 189582853 694664904 531564327 306535174 98143345 576371901 144185265 53386399 191212611 384562149 844099335 673690505 311201651 519928274 139482579 40586770 929866729 815438942 616315107 288958547 179613804 887954009 439930488 343435223 633328791 399079786 447633764 421935358 196667325 69808697 947371719 653366685 318117191 16631216 506672129 988233577 427254917 263597517 135184071 283942269 610783758 580099482 599349032 36100376 567727745 850994837 725989656 166536172 355993669 62363388 437267842 1109743 420045854 325540137 704570498 570651098 554017049 951566262 507377232 224218616 476706959 570304209 468059887 590147847 171250239 807000278 35877734 6765982 366433089 36421567 350587675 481533444 202511019 863275332 984751521 407527031 823836212 850602874 655954492 144461503 278611957 34812630 375139310 436971910 694575295 570488040 680413996 7947518 596336901 565289610 864010678 534780134 416066709 763981621 332264394 674975402 485613815 536060108 659494835 190375854 898408440 43484869 124276094 912746156 241045298 821815255 370216998 202644498 730707266 402965019 525837086 713958167 176291174 641801518 125755146 950520589 705964627 612028645 754988502 464514596 314273458 998706047 859986390 536040016 528969638 221684605 548035843 226912152 485362169 301275594 209764555 956764964 160960222 241649048 376966611 132646105 622421739 297220816 112027860 916100178 433794489 149623352 340380101 430277312 887784040 234153169 242778739 882427377 370529600 853699224 878464833 484737571 406337362 782857248 609233502 548215332 126492233 507830139 777891790 434323821 468256662 147274916 816199539 230986190 652989670 358180034 504525969 829221083 443556904 816128761 544101167 93960503 61573124 377469965 5060381 116747207 334628222 135076547 211681441 494135239 720160536 997449577 39582698 647468229 841609717 779100857 793607297 314084627 519976035 977977652 164301825 242495214 709626249 23563921 710026303 817469906 294098961 3893711 517409834 343306457 675953116 336645644 434669967 805766643 841903041 151841757 415331491 756379959 9917968 545751935 108995059 589867804 207295171 254714433 532454947 73940905 890964871 296682275 434394571 29679054 830740017 475885128 93132675 677302515 94224336 295620908 512272943 547076967 140391667 395407302 163595151 718638384 683839761 552810962 468880854 219990449 71711214 92843531 401507542 543199247 964602559 60018278 20502365 198890037 30459698 310181545 81640461 638313192 664110383 482060261 211847440 152245515 992624372 919370287 332093374 747932033 900954598 180295636 967545460 869528670 46524819 308184740 657085097 221952199 740615143 867666565 383032823 26273481 653038609 472876556 17685803 825099525 618282607 188857173 12778974 322274527 58719334 614892683 924492903 413692176 932995217 783849017 444567508 980644247 241120473 884462294 429271157 46139389 197756838 746659658 494685595 566576282 429518508 905597089 597940798 135983228 642235607 818529036 891722656 415016862 251244869 172021543 389681408 347067011 780143614 797068052 326701227 292659929 741556033 794544255 808589667 777873981 612556819 391171663 201570019 227100956 964824121 1541322 601847300 833701023 932619608 484882597 769074109 222457972 371873561 238207098 431052329 235659265 90940225 742054936 554763119 31506748 637537399 621223880 694946634 185927067 911895777 540428156 60014318 92357547 307596687 141617714 906251461 331944 550147688 629640228 391887437 970396160 992400211 216297050 639686089 463908368 214479493 441451574 777433550 104989368 975566155 176936966 556690405 691523040 860593140 580999122 425176720 878251648 449789809 771614017 34008712 734132126 962407487 635054392 913162959 800058521 709564991 10366492 204749708 28708131 503002789 44292862 790829168 174064445 518209731 176285883 347420157 503128961 837604524 838428463 821979834 68411272 992049153 184201243 964902687 91259977 938683259 375855502 767673530 3954069 589418456 384623973 397511431 22027262 337624727 119181154 482958854 45040316 644474200 163465744 47377721 932902231 348295723 210532248 379933643 33072875 914714128 834092065 432290191 175081471 479335246 832106693 855738318 81261695 278568850 24111710 892772199 553023694 497160424 144320522 559960210 919294193 133051820 887867386 431542732 790175033 251234693 740549527 192331311 95485530 411678226 982261988 380383235 726085982 71404356 400379427 363880889 4357709 771454865 682980255 564678206 704068711 216415110 513179680 746074066 666647805 634353178 374119017 192065975 460559538 649572842 224038629 176244326 123033303 460619013 380172073 681600368 781846779 123562595 668418547 917501202 753078690 294996205 559009781 386937323 737949313 988629550 862884453 373659191 448178671 775032718 89124599 11981081 515471900 285851114 386990992 569169441 446452084 171985774 126797628 92411888 600506930 495288726 942464412 94458964 961557009 714063619 527688213 680796325 103443890 744690114 103392353 386460891 681512533 871132556 243505482 204404230 505105399 185691922 458057744 673264930 132717662 263690444 433678078 638059828 599253186 696285753 186819515 907628813 134903826 328425628 692345172 971630591 17147501 82390619 801519868 931281618 965095089 472183556 327409962 556261419 543716165 11151711 279519558 69785907 814495855 822940419 414032029 184853712 920062269 704619899 152823227 105162931 379683251 115258721 933758025 105566663 543127279 329871509 106831843 781233685 137422622 454277611 636991632 844828984 16407614 188901085 916271457 219495137 558863609 964800841 432726370 448584172 871409326 500217792 948421154 786960383 700853468 148616538 919846020 745230681 374761208 648365362 648448520 950353483 128562202 855107670 558220557 422749190 802492270 776286222 288772758 518611530 375200045 778823117 246950641 401210381 82076457 332635552 43043994 671358851 325649977 179573621 249974486 479245268 676741668 131699016 480051520 370796746 302607371 176928494 236102109 96333763 902888867 651415854 453218366 50213922 561054395 504814724 640243690 422905429 123790952 570556047 414045625 497802689 810771018 407565449 54414688 561009015 429099931 358961512 847619001 200638413 194448551 480746536 235446619 131485117 790628917 523536729 920074635 528143633 94114948 357277475 377478752 464222264 179901311 210234576 209650125 654578254 777503667 742528825 923124179 29520135 242118945 53840878 1022950 613384519 949509462 841659425 377968798 613786197 36786375 228523791 453899398 85968660 539444135 746339706 287131223 829433496 831957944 191309045 425345707 461532997 587296267 810290399 557719093 918457274 103056803 917110003 362514726 964339050 194713859 37478263 988712736 499653811 966076147 875210192 994110773 179377087 265409763 204249937 308557543 503961350 360850364 769025178 928109777 939815398 203802137 641667904 229552043 262344427 275564117 176714182 933740267 925902393 591527721 122911517 249853956 817314479 417771110 743759080 672753399 691875213 736993609 142666638 625650633 476833048 12841823 4978980 369158206 5024226 224107386 255721407 553919788 197734283 942524079 660816546 196468461 231167498 780091393 121688331 25421684 122708882 284546973 650894887 623827270 573279700 28834504 713926994 770474422 308667339 303756862 365599890 453286288 208138817 23447293 744945286 955547150 269850109 223117197 931167121 343055482 696787416 748172136 876731976 595850375 650249099 985406563 20712129 315293406 774286991 283737363 349642166 440588018 596191889 524344486 102491640 675223874 467062969 160631617 998543530 364322093 800598653 453908722 962349324 185462323 225029124 709730704 109163863 551475995 976952869 511025480 910373597 546666053 638635163 270287101 436693836 340184712 602482234 519964384 435586401 25493232 339171944 358708139 243749659 864027629 970077569 184575104 510785855 924063398 185336752 154996968 799200419 883192017 866342228 394883084 249047436 584115055 765756007 970030044 771068576 743857206 801323876 237203729 933641523 762592968 502524818 502237672 894776026 76199727 906622976 933530452 566610096 357817105 609756782 272160002 178916670 726380118 191845895 836465969 439771414 92146549 281024866 16531613 819790335 541135904 56352478 941342049 15179711 187327607 741748567 859645636 855055244 82790318 670230584 572503574 822096039 284802245 118577552 497237886 755209502 644179524 954565202 734332872 749474653 925198451 390568875 574111779 460804989 217057914 315752755 823441936 367723075 428722224 254862468 270133072 930483131 574932502 256990013 27278193 122602542 996027064 362760076 746923000 812222792 270556115 470569099 374567298 167865032 699975514 364705335 319321769 80841798 80078364 450676115 998395282 844206023 141574016 268986433 923362754 726048213 131790174 145824309 578712570 536045122 839870048 55097885 498721681 422236810 365419189 222785288 252393587 489195015 151861566 62329227 926854708 296748485 594192966 662988845 412607889 839983476 745814897 259874096 331362605 201303907 531344061 687827767 890467960 425143556 907828965 434075668 813250343 205970061 902330528 71850927 102148601 617389908 904506039 397486122 587090639 783716378 972317344 248306391 804947705 975079523 439749687 729744519 928095644 811750627 661596913 848146189 114596397 614257539 804904140 891835552 268522655 606878952 322240498 660573345 161601850 745873901 964929634 532469520 361862721 882891371 21796968 164510748 340055239 168121242 94024266 435263037 120819112 886401957 885810464 222656525 308993187 42539669 46137854 786876118 134492666 795502268 206061360 44619514 863838200 940626833 76413636 897516757 689210875 145228084 415199926 606923249 339847423 538787398 624208122 430169851 261901963 630701625 191977617 877480208 70939232 7399752 622847709 909155545 268174966 997883830 857592547 125498554 211534129 115290398 907159554 591966771 957510443 385585466 149726849 615986639 951184377 288116133 603378236 548032919 334482251 438328288 684017472 631305571 443364938 25076306 299690105 184776098 247257529 96731409 386871303 919203456 159205678 283281486 941986267 562139591 114505446 201532596 85376276 790312714 192109458 365933108 553324588 590456900 316423407 383155710 980624756 724961453 77291918 491926800 524060584 984169242 923272698 324550043 812003757 838417771 228280105 87309780 578573275 176575116 209837520 264546671 872347495 18009893 871300771 719996797 484104188 769007868 901600799 775351712 375693940 692133705 520070721 88069953 360000887 337835955 297912709 725828955 776090716 25417600 227821689 927544344 607947866 264561936 193417279 626673644 72092321 411740563 561119900 354040081 673896039 989454940 836770915 998466078 964783819 968239335 903216692 870914484 553798243 462917422 279524938 854359132 740265764 531117303 988120723 237133651 55121047 884833923 307146356 391611737 415533703 475003299 81792999 350319267 718399905 541144197 726827625 521017970 659509708 179686839 634303108 762960962 108077921 866320758 886625019 175172932 677717737 204045752 917423317 853784892 467215252 456351108 232838016 278280517 13199138 124270748 386441145 989472348 774850187 385791676 731163895 20554452 395658694 409494933 370478934 49074558 570675899 945377574 373695437 632401689 509607693 523036253 338020808 270817255 419712169 254967193 833689272 541074907 146598699 7688210 332242594 510846278 460422306 784017862 691996899 493253394 446375455 434324688 872955904 376439951 306050929 693023168 170882335 762007963 568211910 263591071 379831396 503533669 848044049 221421721 461665852 789443451 561945487 835374836 606795336 699147251 122917377 966336216 144953599 111190668 741503395 4351921 22089526 202873420 724422908 10077167 197377228 994830478 797159910 795011727 4923422 962319804 729872519 284111192 828520839 939398890 938438241 123100241 654767097 211529477 390469388 820892685 570585750 677137301 819778501 684951421 816885956 369320616 938145427 848641646 273832567 601505239 673366360 603184646 398933034 761176189 348183181 892297161 198452947 669402653 627868483 644552146 768064367 164844949 648886975 417748738 273013962 236816331 889497493 178827219 412280303 84680305 276465854 170579097 146380462 602366106 227782603 881986516 440951979 522097908 726806992 680456642 848906374 74270780 647899672 411262760 677812912 879975807 232369948 772751854 490403544 749352511 541263675 36663525 741979009 212346164 214569527 245121242 469913751 250913400 989883633 315477460 224323399 820944208 8466718 949720329 222304797 959934190 82227797 959843161 199253384 897543674 248501488 7874530 33619909 850015489 142972448 291531019 225338281 954323586 693684073 714137141 719065179 965425515 887773282 234960402 126363602 818073037 857607786 19421858 876324258 560798810 532427087 697256365 199843870 41149330 600708071 440989333 124205040 951438950 526339869 418935431 754431694 430988492 697563152 967195608 288923372 380320734 243415886 287796860 777812014 871755091 798961159 744141836 311376700 906726664 768868198 88334954 777291628 457024638 989505117 405052586 461466091 620627846 385321971 537637649 363281783 605826855 663674833 385282151 938575226 569002241 382307265 148339078 32183692 409444227 997550753 192051478 872457358 547433209 652517815 803261200 952184310 69617193 200785503 748602823 326011627 658511039 754261631 22505908 222268704 707031389 265213485 344739419 410275620 535993246 917495644 342570009 19811181 686818694 858684466 730378269 966565572 971910087 601515604 727446449 96116663 613355231 318618286 244525066 987393573 670475319 132529811 902434060 904278071 327023345 81184155 652451479 719306860 408426900 491119550 95576523 591043335 251030102 843556607 818677850 505495050 547655338 304973190 953680374 62830649 462799922 633598867 960850588 96678934 167023197 38757703 51837931 285555938 219252262 994317114 947042902 512384618 719621128 711855116 318180131 304385415 339000362 567652861 944101177 76046154 861698979 563931832 424607608 198434429 686270506 466614382 193605808 922044076 344273605 566239313 45510315 70159311 217831368 629392885 414259143 636657956 259548145 430218983 223617242 26279283 623311985 50294211 687044305 453847810 324352897 267218820 373100813 541908033 292953204 898069126 709720310 930992828 171281410 190404969 793515118 95969871 84532913 280974921 837327197 398395363 822492633 568206716 752363793 927941257 910670475 628487541 407210937 631614064 374041881 233587443 435242971 265049893 832316917 764503207 628457071 152693275 689813750 346675371 162203710 199389821 217020216 261304143 657841893 128772993 412302183 476770083 63507402 73091771 651665396 417851302 327863123 558797281 704500511 117746421 758846438 257180689 51845142 337833025 811351965 392214255 749527553 580638080 743708245 188615623 997243085 283925721 465751546 79085709 242744675 238490133 773349750 199096191 420682753 69643288 185978632 588231631 273171095 228298557 659087172 152998810 402479497 848732271 187485363 670978429 427595149 793448693 838054381 169170852 418015347 839894661 216793417 911405987 888387947 33641569 296239842 440136603 744867640 578080328 163427493 586541449 945004761 128338332 539141778 785045999 640535799 641437092 429811438 684086072 226617291 122906310 845693239 34606369 6904485 684111104 20236144 97198579 36068250 754690382 726467854 574807862 285650744 711503046 471063229 264930216 969145060 579922036 9999040 168710577 787470155 891797941 620562090 838620854 134937915 748734102 587425322 209879968 930867637 666512310 745235294 759968193 545573257 462361955 201775418 164932260 930101422 124605241 587318554 937059628 425213835 691482760 429639877 224938392 830795607 774022197 115134291 107528859 52021827 393477552 143429625 674422650 193730296 473733976 143681344 240474389 1024807 667200869 101241416 859746918 509093462 257640767 906452404 694657962 859330059 657223428 934331748 930268305 974588635 996189299 285718018 396989312 961350998 682608861 924898073 296339769 926475187 24350646 82126420 486707000 219089889 829497873 568693349 182023918 380190815 237565083 913284701 250955755 911325380 521956599 361760360 421884909 202112690 202611844 174469413 444127645 205389622 954124038 236896085 30087397 561235720 191991523 928408081 232669891 876009965 543591799 620322520 545660814 371766016 721673871 855275972 401642377 767681911 884411934 542999479 151221554 305512094 682691331 391199631 929991457 66928566 532507817 237442897 433256432 92774261 927007278 564357821 642588648 338590032 794431250 211508882 302284340 164787092 899655065 964449113 622140928 835621104 5798010 272437640 149658127 756422578 702472226 594408676 609210687 124319233 986987958 123285747 652212442 533222631 553395621 440243203 87892302 47810961 424696859 52059732 140824252 649276208 124128566 230784380 111020590 29240769 671432922 602476235 147413646 578003915 571055246 400483469 607244719 290005462 413610106 385744023 469184643 424575218 676055880 946757344 864833646 900139883 397527975 671135303 352448036 16483453 455317918 499545244 568133601 775957720 363995154 616393143 42480007 377678324 893286594 555594000 335931193 13825152 649253274 243530632 656787805 100290501 775119607 464373801 836913909 360428618 10769635 820210546 164988228 655888643 834778750 546879439 594020608 760325635 420954348 478924476 404183959 314549319 36968677 53718110 586116786 876197743 296558476 991237781 636213021 458588676 28358660 7089379 363443784 119571794 208802299 38550701 839869069 989033892 651469872 528746401 313752406 621158863 405026492 113644797 887812040 101103229 601510122 293326616 677396137 9664761 172026367 358567252 243545692 172650458 451901802 636554986 337148209 245612255 50403476 254754706 994153682 485929800 634355402 12519325 996636903 642066995 625196096 225536251 746006408 269790020 354327865 695772515 295025484 287472603 191632061 81884206 558006867 60402434 983387415 559907564 423660599 120913637 735478445 936027907 734265658 610892425 827564416 728443789 589431078 78701961 299045199 842247955 572364315 971519635 709470150 553463455 612668690 532694069 602266425 166718294 885939073 403063134 562850713 646247691 142877739 176362132 176125390 394633533 813586424 406419675 201361253 558398286 191176241 703984503 447007328 200759484 386299070 790497582 792301848 303544938 267453889 62656507 585685114 236763239 747991117 359544833 949634425 814768868 666242427 323029596 987129428 849350607 351214433 146647134 26467779 975336246 438021230 619235313 390330108 385412631 500097804 636724934 739946350 499504838 577461621 175909364 375946325 872391139 672661857 186754748 753404036 537047144 159842929 717036468 59058050 770415011 89831587 511733965 241112662 161430817 32912254 914209789 425815084 724342194 407567093 985041159 527029437 831509292 577139646 283595661 896583612 959665744 749587443 846420913 158539100 216570691 975443433 36378214 935020522 944147318 255205722 386573768 750425008 640460822 206804534 78498818 894555125 212015582 991777273 348060130 315133543 295126885 608929783 917349860 987404874 273672209 710621920 26148559 586541516 815511415 76154371 198909740 542035048 71682997 707069846 601581143 35907966 899423466 976037458 76519516 334054390 907271846 913491965 951852652 386244714 496422631 917738986 83208268 294845892 931073056 703505114 153156652 25024104 472023967 102925562 424137314 818037785 112023860 460073210 477912136 962663040 876144061 387275351 34278532 766846468 942633747 35326070 393389507 789878181 529596522 692249408 351480560 395477053 685080431 907589259 807021308 751394049 927343154 939716407 988945335 846132669 739888679 162552117 871094068 568074212 60878258 300682552 160118020 677336253 11270104 939562443 893725007 113713116 991907499 18517907 11052150 879735206 152502726 643005759 578195493 97245340 636874936 101959585 906593145 476153939 115329528 537245758 648107799 940621232 835476033 107770972 423890526 279750844 77295834 526628115 494862928 144899017 973500347 348162059 637021322 269359957 771275699 430735387 426630881 226542306 175934954 373895589 788391385 812024746 207180799 558247385 956118119 607752792 899624624 401303648 856764233 22258207 288501048 602693108 3087684 811665186 266512329 298090454 173467646 324525215 458310217 999542985 575135135 747077203 148401396 386503364 129834820 397278413 713536360 840249239 824999766 169608326 774388720 222438791 937104546 708783126 221198330 698457792 848186029 907971155 228150267 638650332 993537100 863441132 559281576 589204496 111230642 212262007 836335436 652787764 223465225 126070233 382539608 86461101 719254076 515431503 435523837 705469234 280375470 365676920 312022303 239545917 314877239 719885124 120796451 95115307 111647900 659583049 796069647 929363449 207103206 217744952 442552204 866923813 435645549 957084212 176035322 218915677 557172913 821983204 987257649 88820941 432473812 741239932 838133422 537057270 877808077 160535058 760888351 708931892 932489493 564894305 161496235 259238640 739880988 980423902 882205660 147037987 537049034 136230460 637200061 895579905 684331865 304619355 204660422 322820857 708022904 570632401 236830165 508491365 485576687 950385853 736003264 972852620 545892119 475171918 756930888 398656513 499283973 570049723 178964175 763834148 376778025 606949458 784830863 948943981 68845297 772646686 434077202 412194438 807772789 230136978 472256152 215012930 667560903 593633489 887372622 335708487 213910667 392813643 404674380 309873855 121936440 147412055 991979323 678365819 344281955 519815817 28466755 75308893 942346037 792592386 858214350 475511769 333537123 528392872 447266543 329539973 314699499 488496114 373356654 927882981 546510059 875459721 816190673 336843911 724204882 414346892 134477153 831413058 803305157 452645275 584699688 725751443 673472636 176210839 592028050 306316940 947464411 448195185 818315270 182183213 68833122 234975851 482491925 469616494 380208240 839803371 101005540 52552081 356601284 597309858 42439181 367145601 625291642 68593187 652277892 119274524 90003271 552344110 377979485 859672300 770930025 968663561 776849026 439855249 293078436 578143386 490015162 949252030 632294145 208668140 782393625 169608938 25749644 70106952 695004337 199714073 874846766 872262486 649397178 362043199 488667279 905419771 262224415 379747321 630205261 264440813 115302207 686612555 642894793 535464619 599444003 398376575 950373735 392481268 659564697 612655902 615936474 45984336 643801605 367767867 655788206 276559258 705002173 692452975 736374021 111597779 613487523 905388859 114314265 703962520 78573973 439901271 180005266 102120103 88340912 146747990 142508199 530646917 554253282 515853772 607610814 717183705 307496575 87477045 796343934 966627575 774338070 984100894 165678036 986518415 657623530 684964672 352437272 998362914 856372157 911415495 369510190 11088783 571188799 37421437 706137825 398355008 332169732 845064147 742271108 860153289 472515878 354979459 987204805 808193251 930057316 328091681 361846956 110365301 875652553 980721846 10698460 882908401 999249692 913150278 277761196 637343827 548261296 416799788 875662729 568020065 683948549 478375970 351362439 488266829 166507692 803573023 670877425 634445734 202946624 151065929 133627912 235012707 668138881 333614697 669064887 819148902 963944204 380441744 26259316 432462988 521678287 358063359 939859395 89584110 925812423 314289376 585780240 728361844 533156868 899036741 997686193 128395332 440288271 550472311 55267707 991926449 282132225 787277862 488903671 920685993 166076977 811452385 390540032 55145467 658925098 796981400 879312059 743453357 907231903 277473505 950922704 587138110 587545428 847095712 489880659 514641872 735740397 540996539 91450626 42344389 489320149 718108982 982318348 776906282 79262959 496034214 599954629 353741738 54370515 306688792 319381565 547322290 954155453 910261885 402589172 840048838 398146255 432131690 857965360 50096631 316403974 713730835 68245028 198293874 816028254 594512447 955060334 462409068 404707638 85558499 222751546 530699568 832241817 604425277 146660082 593275078 707352500 683528851 700529357 110276964 968168975 293419628 992072720 863275284 635417488 906265194 460589278 721329191 390694258 488637215 813484275 906963359 475167595 834145004 249518310 50944037 598809769 949695930 994012959 668948876 218359579 655264806 217668185 63640568 129513728 514415711 264985356 280548638 635457932 452744999 474201980 450447579 340795966 492941403 112689444 252075606 765718304 768605357 811434897 394439826 883945270 775367711 530243417 297611868 979661316 874853405 252939497 183568217 25195155 435997940 597336278 586981947 913692343 991147245 984234397 237007152 559766373 110304666 987147168 70630476 517782717 440640535 424738957 922234362 200600972 558403148 356756307 437564473 650681299 360034299 962239527 703870448 554277928 346831928 720671391 23752219 570887133 204280076 382429126 583038067 764709338 376410792 738833573 149717420 488208828 520138507 424719825 805537062 475895452 692286521 237096325 215163094 928179440 738992164 65586662 621682626 538876097 79014013 284312578 446466455 499920500 320108673 323489306 493032265 334942030 658836611 120648341 745529846 811912195 568643615 368605187 579556274 638614191 287018856 695206017 452629556 610692867 875847107 671987209 844435399 182382008 657732794 100577640 475541635 702625966 268809780 761248523 144392709 294976307 650219939 292140708 20169418 727283839 384053122 728393724 385185148 491459565 175213850 373648076 880294871 983411559 463817669 142985599 164950187 985580372 492103800 339855730 449583449 526461760 450951913 714173728 138965957 173527280 399202491 435663341 576112374 835790760 413969890 215920256 438010915 77836074 527985212 343797159 202005785 793472569 817239810 698759865 739884244 481480603 668531422 128968234 487032863 812127264 172099893 650581906 853587870 371625683 832858873 644625598 60878342 665742568 925682699 617579433 524560696 233785482 994394758 555467960 745740211 108392034 247523613 74085295 930908916 707800101 850178091 137121579 790429710 223146640 846043170 573276173 116380507 236901909 49820429 791228434 652417386 597311971 977913065 136004332 869859611 265969570 342986903 704840798 716029373 301021527 247903690 786547960 43183181 814933985 749455965 740669260 545356039 567034571 887447864 391996550 235408241 780991105 600018218 753406027 361282342 204005999 488887025 414336732 765811498 573610185 218655387 992338735 717523574 469084728 251273225 264197129 776669250 176553292 979951828 71674942 525243031 256226116 323035901 680416463 397430860 42599705 430484662 530628083 587877107 536597978 683284874 933190349 942820244 545672106 85188536 818893984 334475906 800080158 467574596 819380818 524130961 292443062 745417260 45296977 32474645 27479145 20350899 728190378 673649751 492145963 360499030 551882904 500055579 83375345 794081063 687341837 821518277 629218950 147731670 361063230 954285694 950661813 636855158 524540846 476631517 3533425 472691574 99007608 380316154 964680651 551612281 314149128 45111163 653671253 274405728 244586092 396183983 721515758 246077317 861753010 67983899 252082510 647996825 447639990 807546545 895489112 989468428 852050410 605546657 334072160 143857437 129240351 783805280 385165441 445493599 85601313 213881371 382363251 17527671 306230374 709415847 496325704 180171753 689872045 243175500 802465471 364191430 126120822 525944546 402804978 416977156 654756980 427093641 596282913 59487189 784873629 779985304 817200531 198138321 51447394 189002251 297210944 371250689 315551274 972855263 46808463 310171161 794881765 159287827 762967859 101374475 52698353 256350313 151395241 173549263 921062559 517349357 415738585 200784486 314533011 566162516 200871323 210221718 150537980 17879390 786634429 295460892 56454796 113446626 841550899 40801777 855598485 423402336 427718024 714802275 636752701 723925840 708347383 617360665 64547328 777863096 839788673 823723987 201961694 454404668 124652588 714877282 114585723 295394212 892215745 761289224 938920481 80412069 695899713 798195133 818895761 206229655 203373536 956154109 75563914 446923227 318774083 349767725 749963693 687654079 576559703 679677335 820912377 816958310 122089731 15967458 807915910 13596106 245334733 383507050 687634339 25877697 248388632 765255614 441527795 627205713 918723987 28650400 23168591 691698439 91265450 389311034 877025547 191726850 971487842 296765280 876226344 443000260 886378719 443580059 500125797 617762460 273117903 16175902 345496594 756612084 53034878 138360780 852429630 104631866 788088480 765074082 873096142 148658397 263709372 83001720 959372678 480722484 242422933 522751005 827324052 289809046 947441265 781578024 737646872 830758554 434413009 646484105 410607584 937215859 90480663 606101658 846301880 243682922 417486458 765662736 51804766 605984691 346532447 301484398 187310713 710677551 360495194 405998424 285540242 587791739 432839772 793511629 631085511 725286480 813194934 851019607 132480570 637648266 164492171 897991482 724809952 618253076 307824061 271581704 905376768 915783780 659915784 983989156 889498714 889036289 305741853 141269884 499807777 812477557 530824965 27978930 785990466 933660725 523027692 266068838 189002331 910170788 860238753 664946819 968154401 225934321 280890363 459022040 282842596 434283897 425537583 963095282 208322821 924579976 580810444 949610673 345846997 873693971 507021209 524661006 898623144 698691968 295715327 788598987 216199773 953963640 247063757 291875071 890244291 988196066 877982312 671323463 300014628 653992358 446019295 827977437 753846709 91492767 143841170 630143015 367101868 824603922 739493412 349158094 186586312 139259698 799084503 756240553 914728761 441560313 306813651 708475987 32007580 988491344 416539406 63435319 694468206 413575804 809785726 228635014 353884025 530647875 663057154 508776684 596727559 245863191 729101428 149444638 298100804 801365785 148016038 357980653 275177331 926043271 296433107 744758177 31595992 222024142 19890041 8011293 586149105 755323307 813605676 145166714 562260487 954831360 296804002 700538393 662186116 30034808 526194392 972917401 818889399 137513895 841993756 355544354 688186767 487208532 895791170 771050408 564291491 210677592 98590760 601243534 997310245 491449805 188893782 908075986 382348177 290186480 353969621 411667799 278134354 577035478 541960226 916358547 485424637 735039992 28515845 759184844 82640080 541479764 724430317 512167248 368024371 172275537 704785302 517928924 274055719 512884795 651560462 195956939 166301541 222891695 272558967 682261287 331637476 239767294 356897650 660825189 201066403 703611712 296752042 928123325 603031483 853072336 136639790 561247463 53616031 317885417 16420046 846328480 150731518 85811641 728267425 279832315 366825347 562581352 318879002 573623488 80283045 420447371 279675491 886180469 782568349 484807280 628821095 367223679 844032939 998979277 884350592 307866066 957230583 421255269 197274934 572220098 400288547 67887772 679047081 577133425 707653392 802650959 86556699 333799958 833719068 864420412 840340755 161471690 950187589 63912991 373093322 71183205 967084450 311567717 193264056 147434228 198941984 759471862 3777704 441439960 455332280 34833921 19354092 539139615 483711879 889320072 1518117 420502113 523061224 214764785 76259661 983297189 321121669 106184984 130878261 580746013 173723026 793349897 37453787 35906962 429497864 896713970 691696479 646462161 941848774 174332383 326053363 727112928 246408199 913764844 446745173 15142362 971647313 807685807 490258391 862094910 719088508 525300543 989447445 198796653 324775929 795592603 945286002 916573160 934519869 521030365 691581400 383025147 832782970 286912641 933492051 35767284 420595559 186205060 58652246 213995401 232063058 825089702 931780836 833506999 910836395 387602961 335808075 339009168 118098505 768803495 271757958 381090501 119071415 123428502 197081951 567804916 649336021 844631978 305260696 81300198 962385094 685678198 690717832 267801801 78130601 136636129 673681159 621333889 608419049 532988552 753764562 843743785 300353109 602083972 959225971 497564528 335221096 462100732 534798116 22324665 54317842 833044297 377153020 263415913 13557240 990141633 935474427 642877417 513628368 180759898 628795261 777398088 479130537 649022570 478365073 849247058 897283265 594063042 515905659 271781822 779800981 476194126 666200997 271426391 138034772 151963568 879102607 797405527 26412313 811986193 662601640 562912790 489489234 930205769 683622195 230539733 891331421 999648396 818046613 819433760 340556902 692714138 207874554 769181688 540607245 300688574 136042356 132298799 13828545 468625412 34837662 302034444 9222688 948774516 655021520 235303940 538447490 679963967 862467320 12075686 304843047 653272140 173978174 47371817 728434340 806711028 246376454 900683483 41689510 391172845 943837972 931126138 231356424 118204440 297060009 757211438 702810669 526500412 157292513 202046956 754397053 133397673 689674512 248243805 221374660 964774074 636961812 774120859 869907387 156972982 627076988 988314977 780009222 224378359 421160603 398300740 967302151 319986703 969792687 206843479 532792733 767668535 384466631 240909289 122460040 10873666 506032894 209737331 785302623 272925195 423866564 496171459 409829801 333719651 62678013 74423023 346832043 836958208 515825402 225494146 782260039 923037554 115122415 22980678 632755602 898240552 271851103 539136993 37783158 812212989 822124671 631799138 60883599 612362405 607745217 872550471 557184220 104033548 581830377 101534790 438612503 56972194 651646316 533019439 285453232 665651463 136955285 401781155 628756669 44449063 709725520 902256523 707971599 829165153 225617309 95654612 65661156 800961178 871576267 130677544 196629124 768160213 321758141 164194008 212759846 123845992 581524453 975109768 341826903 547366362 732725126 70077965 346842556 341641398 773226010 97727933 217015093 493012708 942858910 70629821 530615364 462954431 469103311 265141776 554157358 899123023 43575898 577266539 423870326 737824551 328524893 792142000 762838251 679757655 101899177 789424397 820256295 778790273 658216737 7311789 559178080 787272447 880471193 486141833 291277899 734618306 548872504 635674718 812180251 934797875 761586079 353818118 690527402 236555766 2079002 105752368 92053333 449214570 159452535 663372947 827982053 533642999 340916885 876562651 291729807 953332646 706381387 687551269 699070951 511159978 653564317 74219700 950152286 912999805 126605032 24969624 472307020 847040623 947915348 702021433 472761345 251128724 138307594 777499906 643794748 379891360 699792343 236657209 837747114 728348904 126600830 72714688 98407061 415477492 999124991 398475648 799181215 377432159 496411290 803668459 730348492 748368493 342631041 866009699 507814142 613681929 166892392 48540302 582947292 811671379 5093871 827611045 736565909 98987455 825776653 471813956 275891227 533232380 513614885 24407834 310539574 723665806 589164920 16445836 123266915 876660393 244593910 287543401 367163082 915009627 598718990 694923076 367800691 997378425 171649574 558731888 894953851 436444548 406348303 846661220 206177255 386290918 556499512 190175870 639844369 873255827 346548310 82283320 207636607 681378316 188237755 599358194 554815181 58853308 517001432 765969163 322335547 502413460 557103113 348426158 859280421 430326100 974536050 376704390 935750306 49947263 273093797 449572670 331560625 432839206 334161411 971226400 664350520 335727983 986399954 559459932 855077158 308811673 981039148 271267950 798350942 420023335 200541906 335176581 133965385 26302447 120774721 224469177 219960534 894864360 391809142 962673197 616000226 397826948 408430568 249475214 413520092 133194655 156100374 46068269 732905892 58540305 565932969 76458155 484093520 956256071 847195983 946954143 25426756 703542165 156052136 609715985 814988881 637411382 440821926 423028206 247794779 984398442 943573392 903923664 191711288 46904587 917359366 470539561 298054132 739714549 196138615 510537740 717346348 842648564 667269336 215245028 449071466 912770771 224303277 997332303 823035812 302217298 612540074 460214962 367307047 975535648 719976278 195024579 74368857 693050194 98582588 108136662 762062557 85705353 833150130 985262692 326092721 485121086 688830880 982856956 849762761 291357329 721580998 56285460 631187891 96429782 440382748 407827738 120576322 730421706 579302642 677495706 262856022 137074188 816148815 741775223 672505579 332472651 599384436 223452002 325641222 610275794 340773690 690397515 421174963 693043517 422897410 601181400 434408386 414018522 464006187 596873585 523717449 23634792 443755058 398459672 662760158 488695418 741635220 645489088 495277659 660811241 998842648 686563597 378425707 312126926 523589754 491140126 583179667 498299169 662095133 109531011 829187851 95467142 544494944 56293206 145482312 970621632 410616364 437407493 570127743 16064930 989166893 539356192 330371542 935270987 456758605 631514563 970217857 101365064 763194349 587747804 742966268 562077758 13781436 157783648 516313300 722728965 40645179 220134738 58432948 261553108 361425541 805892109 16220686 683382763 737171748 953026519 766328351 711807428 748077310 673846147 697692686 780735926 361708927 835578818 169701416 5297645 66761168 827352513 809303627 934932630 875134185 397879994 189461436 598573112 156751018 996820222 698549682 647506979 99192049 149059071 349110441 619847619 998635936 3637411 953457509 809778805 504866669 106815121 201249620 716068528 620289212 364481606 283987920 366947245 556661718 135485712 24572669 94817989 372281474 234328679 344264518 71866115 391744665 820473805 595254416 429933909 178216083 37027272 177078445 65302324 164745093 23847003 472959795 367932912 435543321 359266090 777705372 350359093 304647021 799261413 778558727 571213163 193851900 297801296 88163595 981319911 10155616 905554663 200729635 590358213 697900231 200878628 872993264 622647258 569415035 164434872 507910954 982058514 179631285 16629769 770917011 379827400 271568158 221515197 638980871 294283698 114088907 491026897 717281421 297059793 956288080 757347001 203478486 47609766 764570867 560659788 820866800 129682841 971085018 27352812 984162200 938791479 381941084 379418174 933510825 362837277 423418400 458401822 740796990 588207370 357585435 455021834 765683283 871714781 507672003 164858934 64467370 447476625 975790722 131757917 343465877 850430899 994136619 444541411 740429512 406048368 438987455 227312546 883745768 718806244 411172064 362572233 658371790 343834834 816661329 253656005 384295302 761089046 347129401 306152003 316004973 586020936 833447908 334392733 52127080 934434827 294249949 284331789 384073465 588340049 329478742 294338405 723411749 599338196 585625685 642471072 129315874 90978819 556282884 566109924 440831062 631813565 995035066 662291436 55381787 785593554 323987042 974067969 194135609 375582001 494037769 995134010 623084742 624424191 512734367 299312296 440609559 864472017 371584004 405872948 995298137 979512927 60883339 902151175 374128668 481483807 438765288 93987692 478584557 597042800 549921429 471429218 166789204 767947412 369195069 821862418 776825084 773490369 667224808 788560092 337139819 162966291 361653528 346654838 618457839 593358225 912037833 14539596 780556682 740216372 709065954 576538949 252703848 6342335 560436303 195188424 34566454 906025985 92347825 485140012 711583727 726363196 873836557 164055920 558533903 863964516 204405635 837405855 356553491 20763705 997119202 742721976 691718356 531989763 37979412 359264458 521087095 340495307 652677579 266735863 806995763 977128859 268099318 114372873 542597898 933533375 667300874 882288422 391094589 949228216 770720264 415855758 511299515 683711077 300724729 176313683 144216285 939241522 884507120 148298754 601791259 907128754 841506001 345254836 666947861 681718350 112935823 354263554 411760745 981014704 596118596 400173711 782027732 706755216 510907107 395335435 279419820 929661182 740902754 429382755 242339751 115939950 532955467 995007940 668904881 280069275 805347711 292815769 826448315 178299978 519625601 693532728 384460018 727704030 114495131 512744523 474818434 827212756 939535096 800676516 472881966 703847345 220019344 664775836 392310966 858650670 182472877 99632541 891886958 948217062 61232259 340212780 750885546 951394846 947721385 863012080 81306945 314899240 325622317 29878977 919605687 997048586 445540094 584739221 535668759 941570971 282716081 47236894 503808871 686093512 476919927 904657472 64131750 956954585 52418846 288502786 17060037 831498034 36070231 569358418 529992299 194647560 630580426 713281661 472299785 864983006 352030062 593511014 54816266 22217763 509803398 2702832 975227693 549381653 468425810 14544398 56266712 304205485 121623485 73085416 305068852 777190549 773750226 784460131 37364001 180562067 573039124 27394097 360521033 796178561 95471904 53775053 446448863 531787515 92030936 894537678 665845595 439087662 610106150 897115129 103031272 287142629 256298459 764197462 753505215 167952364 48534096 761041819 372240913 652556329 990053481 231552386 696667157 960253431 780002959 407455968 438831004 201345603 868452976 787267368 910749607 74732130 903357069 437957814 415912141 358852782 436901026 676430309 363135006 289652895 804079193 661694077 67868647 877671193 405296395 276013408 140737196 74404633 935960193 489371032 925054341 316334172 520009360 899673566 244717980 728941856 130207331 855992709 568282990 353938446 790318421 604811944 877006325 297072644 656479327 293068061 453300445 136068923 397570037 730655096 172323772 708966629 165836717 13662987 764237543 798779628 589432904 626261093 301438256 176728427 459967671 754598024 382001103 66430187 966522781 238376702 926724300 574639976 226899655 533632711 45543197 189960509 165120117 137571927 551500923 934946778 622049219 484147799 811071926 485573870 511625001 934294004 200605441 270786860 30329826 422527660 684437324 647509000 595144613 947336975 231768269 662050938 638985177 435253265 703629546 175163620 135604864 406950979 757645984 821505862 876192745 975287466 296511723 701492760 525096333 845362149 318930292 214843946 353037999 394439720 102306631 740272478 893047745 922040494 200870094 380346374 148638881 727476864 23816827 260667245 322297702 520522029 948449720 313579843 496523963 944376271 33821897 246636048 668527088 461145472 840687835 82840346 946025279 626411678 322283530 535006963 103425943 838034803 939597146 884771371 12786394 43943342 978389742 367178792 424382078 578607312 432927385 180351984 342426138 927568812 99244311 968038294 544849357 444125629 651045856 660641414 275659317 114816781 327613196 97851607 977211813 401737674 600132224 949232254 125449136 809436395 487529967 599184572 7732270 377144100 641641063 926106817 549460155 844464212 444002185 211033402 330749486 763233387 851372165 58803290 751935519 207597869 349012450 391980230 298371486 470753409 857331177 155680097 360872527 510414387 82849694 624484221 993182403 884040002 222425883 122107721 240133404 359813970 944360478 411909822 727758667 333789865 593934317 236940090 523458592 708297806 108658738 448186462 300470131 923000237 541820071 280558166 982073293 470673916 840373129 159425909 747865603 618772298 6541551 355603119 323548080 427243058 800688299 925212558 718076623 856513033 522976269 145788064 867354512 629532922 789974227 422904732 968075237 677720031 304797640 62933676 34796412 444874445 259345818 481200026 475876006 239787624 129537535 688324878 898259099 863045332 475443166 8136947 305062551 476070626 402140750 472072430 425563567 223341434 316037198 213222428 682256526 918811675 437693851 36686552 516755210 180763258 974996367 788935464 190062946 192966223 303229804 831721806 763835444 170900625 128852169 656370571 138996543 219259308 774418023 52216169 258814923 427279060 801634528 540866555 423468322 361643705 838999485 808674856 47578773 735886692 49934717 251305907 470638340 909487452 373309267 199514201 464013049 807666563 37201779 622376132 533264588 994972854 523703203 712242451 425948470 897012294 350960760 396011521 482964342 459508199 238321373 176981311 340512637 161066293 862748347 850752471 501508475 582191275 576105901 735842200 148420062 603092584 776324641 884596406 2749560 770280133 565557407 540057282 933495509 237439563 630400713 321635832 389315635 730598931 995560078 550902276 312894836 294358925 99179353 695638517 98998485 635758333 349088793 5387696 408703651 738827604 312969581 115412511 460469264 620649420 565396206 756182623 479723016 12093874 135552630 494942801 885058013 576542645 376437897 999310392 555944389 398182518 497120499 819770512 827271777 799661143 257894249 311608680 318293215 70108631 159176154 890845257 410398276 40283594 421946985 232837578 917557321 27652362 12747708 757648746 622247600 24327576 837129544 313600063 670670836 672087490 754950644 633714587 306458338 780114256 833190868 815217661 581757648 925994341 428905788 730442872 208552375 198394596 657610012 645012285 568642431 280069568 295358304 597414806 175330572 66209509 627027583 413393299 898713460 891418898 297010760 64140824 415251810 450764546 705616159 667293849 363812458 858645998 989394583 366886085 589766760 188920699 768800302 350363796 535227085 249689556 931325927 326137633 163560002 206332106 710870661 551611285 656316936 484321518 674975028 636956356 810751611 522685365 494324951 964860446 920703066 925228152 227009531 739184460 945715520 849657412 732742045 78064431 329008022 956206122 500489696 242391518 894335290 433875050 325250495 828047396 873381515 103789637 834227641 211702346 284173370 845923010 432289249 334834327 950468666 59075569 910635539 740231554 867872614 175270072 180871772 729449927 110275296 842265273 422847670 13153172 665515254 503639267 905684453 868166541 357132330 403453144 482032168 546064243 121841837 595152525 753125851 111086248 259661795 510035344 267616727 107881058 906164963 925813058 974776102 549024425 722874578 107790099 518191995 214327021 386520343 854542726 909886321 310310416 615322222 417455744 631590279 980372533 135574291 886344799 225801558 563889582 282744498 664459583 225375874 308630171 931546562 762397590 237900055 32629413 967715210 995737535 45262937 682194654 123929157 3926547 653901902 986960372 605221264 284691651 421677779 105357143 95839249 720950474 450457080 790426331 750402932 344989400 950615752 223376699 27949825 483431126 105523936 571413455 836574986 918397990 728029 752911621 777532211 565511663 224179189 82725434 494992600 744034559 329700952 121779342 352606090 64404882 585101353 98543427 976318331 914553401 933770810 706413008 67785324 433503358 591811032 573831059 259425735 700574441 344115432 69816002 546733886 110374114 78912707 580931439 667909071 419460520 351588157 680497583 792644644 147343223 751318588 851644366 162775924 167051914 426642314 560811654 72265151 156528923 20162096 510441194 356439044 246884081 758452750 229300299 119739348 888993918 458962011 794378063 408092534 409056307 563128870 831985502 610796415 227875723 826181006 945597968 528005164 206005012 129430605 871814010 692136664 386285288 25802018 233311985 707048517 451345965 199051180 916587493 226688783 69247692 893285486 426397919 40057281 92790653 549157353 645289593 602345201 107502824 61073062 288479335 839293988 503400771 765971375 7402458 645172537 792933957 927418485 344658804 244411888 991219701 795436195 598215514 323643173 254744327 685799883 602574764 836773483 623406931 606383168 87553593 408537608 436105295 709204631 150838776 856324281 93435387 904101371 22768858 145397374 626850586 724995464 383141536 8213967 339127023 84254434 213319503 385994759 711830214 319938540 194605821 372383473 588998359 609108334 296988951 734416932 561176001 999204601 695151620 140081853 546359763 644970157 316975445 276928142 716577484 434567696 412702585 20388267 547689441 141241251 294179879 161956181 664087912 811690534 24148026 454847841 263338786 681548408 929860705 685368640 178646377 131475335 389120186 793591472 866657088 314184566 635018361 585265760 168250975 713182649 583756541 181897450 23395079 529643864 164025211 998216595 731817926 738560830 340761950 946188824 584700022 733079152 776058921 826181395 358299421 719355220 174921671 163506434 970507659 121049541 222772403 418705802 998037596 298834685 581613578 464206779 276256471 415543438 987937531 646068869 829647642 795692517 325144476 356039771 513523154 561417546 596724136 88622676 192427293 269323157 457625124 356727271 675111176 409758618 997511796 245037578 2699095 912226910 67786482 20101189 538851525 319214715 516083764 619268079 870523436 791922258 851866303 49607732 772928954 490665790 63384965 180920941 570557547 563396752 62907133 875531050 836577935 964600924 296956076 350427933 848393209 396374537 504450306 913236266 340202036 4169139 514137852 892534612 344922300 760127454 346689601 542127522 96912939 857354441 120523684 197087091 556136180 216239257 309307875 914004887 465626139 485946910 940191737 51439818 751818321 513183522 971382308 257087948 999048155 733413490 224803074 834766838 906429067 607196225 394702499 483955345 645951883 810238247 110914890 175411061 105430495 465826284 572518396 231878710 640973161 452849292 395122871 454911885 792576974 373549489 241001254 544466007 491506330 645239412 850195584 306479282 913149547 680454843 364637400 507264458 10118475 756906800 665686551 967200434 891290773 250731976 270361864 461510934 836207097 940067138 430687022 424873316 657599354 967597425 279911200 993243758 521248892 966954231 570084766 764127316 166443473 523261392 194847452 793569252 499296859 525097311 235730206 469842852 822350421 722753400 616905931 830831050 964158793 984665744 808237814 169626388 846004470 258435951 591870881 100833390 25195306 421972733 995294081 323317769 344449798 952153791 944430506 398340734 244754293 405955947 546991165 347137710 325766563 285715275 631142072 389649385 760782289 772858328 927004200 528598447 849390625 39347218 145149817 445276146 166678324 407166995 875913314 323234515 141213616 516240934 787036701 847124228 930316410 920607711 876527 112356067 194194273 790446936 926824478 688230055 718342564 380175049 638947260 432198455 836900369 212010921 975259741 497313237 395671280 548487982 77382322 367042375 543702522 910876576 784740529 609806130 856661895 407773601 194721451 34579827 189694026 546419199 554097506 820495591 417777432 739769692 8969897 280989344 82488597 230280699 600543553 733498905 112280014 895969028 221220808 95207077 289315790 766004607 431871436 855934223 351158948 610968089 127039527 77476563 980263554 381825670 915423906 132474995 120153210 183145524 79784639 188998588 758546074 822979391 778438123 280890836 898938274 328374664 721295158 692025936 478800034 204282004 176010292 311718579 957081214 428590883 661187211 623223071 898240804 72040909 893119013 967892063 506010920 49532678 80486295 269389776 767549706 392476762 303429243 443490372 109147207 198977387 991980415 755766643 773264069 724611022 895838191 416965638 354110762 873370082 804232232 559134734 984379383 106347390 556753668 973172510 217211567 583822238 330991399 330831009 328209709 574691230 818594216 809890086 364722839 197325989 915312811 783426389 950301789 348014245 921434555 849970049 882458466 181860959 454924636 727534138 107640535 925325724 6896580 724905613 169615185 767978421 82938244 400153182 173256297 106485944 426500747 833221230 404419363 563886564 909692086 549184782 948285652 564430371 101338637 811503556 957905181 67949068 843796433 630431447 405458770 329002019 571345012 609348156 615420843 677498427 348082049 597646382 203833433 595285426 64003592 264112259 491338930 135517574 418375620 192058019 726407017 988162296 760806661 638397958 486045888 964972991 529441183 650385774 677529865 807511183 809612371 456166222 486525190 133975554 982540431 681117345 874149559 919214378 750815051 842294472 629183109 252550443 354671448 17978798 845308441 970123778 684723717 640605034 570874372 148219798 80696811 157346046 702256156 824479067 67346173 110920743 69679112 255524276 80835636 412484985 484664772 945880826 861725214 533222570 683280910 677701991 498250441 422138177 751964619 957353621 286313951 684449339 521592317 515403365 895053213 731250780 618405311 133587552 858098726 465664324 793762789 670270933 315218928 945328210 696491726 393870691 95852288 27027664 160399144 122652255 653790186 196053210 718640453 693864148 840305341 147167099 605217648 993936481 117427736 687631150 741543155 136639448 114178521 100781145 591917131 265785067 745229102 620482138 473683324 424295930 109396972 65634163 743809011 304558847 568357498 563883202 100971242 29659078 445264042 793555146 925387916 197907453 995508169 225086942 104748227 697403687 53056099 935139917 218585594 298192666 78693939 156813712 305673565 346485345 352350514 568378219 991870046 823316878 251191 223575997 335010284 466597086 143933549 359391335 57232855 871921793 612569838 751718165 327710336 727552974 443563462 78629651 303972186 976212657 589721789 963938925 676540990 827031851 468926466 139248600 561739922 566736145 790369780 187169592 296299265 519379325 754371505 544471845 954151416 356465005 141356046 401263762 966690724 181047970 262537026 859081320 53684546 302460013 947504606 363261224 919362448 735113713 172954056 846040318 332641154 199257785 356963031 528175308 736574430 718842992 908558685 160229430 69665943 647947139 269993181 27619028 435708810 764841301 463756010 292601893 366636818 69122012 810448739 974439046 354793612 805516095 705642515 775252343 193538084 742646300 943547920 547640361 654151270 224753323 493032811 195425613 118897999 104830444 348748155 89520537 641321815 240610066 359851513 794134969 480491026 378305401 992221779 878994924 38830477 759390554 869641887 862780339 286848723 860852852 727612891 303464480 491050480 862107175 447444139 437198747 85677849 338307788 601339820 592050700 746705098 538360092 395905304 668635824 18442960 938277139 527171480 226290684 117151748 161727336 170230725 29781948 688652317 268161594 307669323 326378267 309759960 811482528 519257145 633579116 75298587 965919385 176552680 35270904 187268829 856081842 240382366 11563102 744276132 352935028 254105586 613708262 834391149 280397787 649373534 421125948 226705284 897497024 528646242 364850160 157187752 177940448 705526782 47159428 59234136 814319996 421177709 893679374 291390442 311177022 974724856 238350736 154292652 672285568 291447270 941798390 423103075 168683647 242847484 60422575 501755276 249255160 459400060 497357690 904908604 226965045 860878020 972575599 201358385 353055581 628728842 924299071 139063960 432954968 555553847 313185664 974084036 377037507 638593938 383145168 876704085 324744391 289094427 568280312 354338964 769587033 198616631 474812719 473034104 789961640 658950854 37678850 125326380 653638736 292766795 693922782 531815105 152363988 976363037 991988117 113775320 234962971 360433500 701864749 929213054 288914492 1179987 639611078 805873976 62238417 141709549 508415194 381558090 701356133 213463582 907881804 946030857 106730726 188156514 289606248 555663128 44903037 19191152 132640405 629418412 946816281 841501214 481793231 157160851 127098488 152721307 858378650 906969747 664689810 672001306 934532309 596716715 717911308 800029124 334314480 640026461 823956326 361027324 646506620 375952031 981142270 98176932 180828722 429392644 930425142 938667461 633929226 872738590 686542134 701528256 657147897 366818348 214318647 379983267 292725397 78168624 570194258 383280763 331868628 852436561 802261501 914521135 455239538 816513905 46118975 642679913 638485605 407758341 729876999 774917529 401474387 356705908 625507446 194249864 906779357 50735021 676393325 386576220 448710165 150902819 869353686 961982855 255715735 930840356 120988536 985282259 496789866 828777492 411381521 121359842 690674920 451946447 222568912 400191672 812950147 362803506 833579176 915022087 682032450 75851021 322273016 164632289 808120151 435747344 644287669 543108840 966166855 927558339 78111739 482535517 226125183 122703861 890898143 425458630 941940841 57641372 832197051 363475464 423546523 240287092 305729440 850265414 803692959 714138233 959449769 143662436 910157788 875978807 777249517 462980850 277043836 413248888 859783550 630604152 536850684 259664525 810805161 267642964 903807214 52274521 300859569 438258152 502066210 139119479 56990527 33792429 584973616 328156395 617095668 203824044 186577570 984319848 348504567 849130208 235602295 340521270 497924787 411831765 880769207 568502860 494425056 595231568 915332413 901605393 160758932 188978486 278475626 709694219 935843252 617967280 127811974 975854137 852669095 228723661 753393963 68390230 454013214 705091892 299366991 965214743 380246331 640513684 433674158 746898012 821504159 168262307 615364191 520998453 300252093 781963075 99126488 405255867 71532442 507373506 903562979 535149185 695028447 704969306 917402333 595629634 795239152 652227807 887141516 187371564 393693513 353319093 100777317 166395696 480285319 302794397 577759532 26823195 276467777 670729921 504650210 277836162 275437410 598343067 871466013 46007421 42984719 579329368 341444182 398363390 480108058 575286483 565421596 307642478 578936682 137388938 926762855 371914264 506436830 579094529 865006025 897187010 238172457 71409642 478741431 826803309 553151222 493923494 511205941 297697411 609950459 801248177 611210451 243301261 856680390 305238065 969211992 37199489 592155045 590353030 176895068 809592331 594566023 970436992 977689911 571670861 659877636 897747793 934060669 674310046 658994914 352833343 651265989 950904677 878830541 18538608 129896041 498905827 300122724 391192910 939926127 527595306 879068340 338085969 859317119 60694343 936841117 641326858 218954198 213284168 683875150 326407391 295288858 834475497 273440909 536527765 444671787 668633224 883534389 597375362 728211053 341725145 692270225 234122199 304292354 991597725 841225787 224049453 81338438 329442480 30196185 245126622 58370820 244774380 212854383 248480472 59931320 970984131 915580944 570276581 265571460 643466714 69391051 107753823 39084322 83348939 909856447 783655645 600558205 333861552 372665266 733187377 977914916 9282845 283112446 560627045 117235167 291780090 148886279 810555405 126323640 317966316 100235599 606550201 43183335 535842413 839239509 981038904 406477086 695885563 655038165 121492787 296345347 297581934 309432577 872834139 778077191 30890239 732973315 686498249 206082220 27190589 793206983 325170128 713274462 775457379 907404855 553713193 64467140 292783580 486473091 927218936 202035614 340237876 595480020 44419075 258794772 304558491 68321593 479488753 625497575 661385806 649702552 837919288 613207808 60654168 155419219 787353247 293772769 135711558 495768041 652975834 33471363 865845782 972993092 296339005 829523045 915963462 176953232 547958999 665517771 900111048 84972225 453633085 818348359 633380061 904582586 162022978 562020254 859902212 972419840 967856159 612589117 993593307 480058539 889740375 824852436 825213654 9311105 430830094 498739817 741359359 231922570 504126828 406103147 525929369 675727395 315864176 507703451 725491587 927907987 423212324 41166031 406492594 318467690 419745009 539712855 916774841 81185022 106578997 396501521 196086256 165270635 516311133 820500034 559019655 731838611 218557088 87859969 269483881 885426262 705292918 257127338 614361561 162652287 758823754 646014145 365252114 914060968 442455554 161978660 274486192 905112081 89205957 732395502 789848545 626597983 722033512 845966252 88732880 365695316 763178718 889995272 545572495 575506386 149555724 219989483 501737290 765774988 838961102 637439388 514045066 363460600 784000414 123401970 790294808 879641771 939128250 359125537 963314679 265965418 765475315 782248935 609143529 468649361 25432860 915518823 679927078 389258079 70266091 326461449 816081287 525471892 248280074 769462241 645471588 55866564 113908531 51735848 148863831 56436116 58473973 242605943 358336485 48916830 869461962 60295619 363427143 517339326 157691668 9604015 334279311 273589685 804849087 485055894 207839433 122832499 333510520 777533052 400562436 642743685 347015740 214911902 4254875 940387766 897634015 63405357 228931291 265472240 292601697 470093462 561697629 639327007 817043083 888956183 121164821 158333920 336340862 719212745 570564467 44727018 796887931 960306680 467808358 12695562 691792879 506348048 612504854 986374496 610597467 443870160 315336649 498122635 312334387 310436488 256832372 986675290 629609251 143157256 86610501 504739977 712504653 51550043 13421166 804152724 838006926 272866701 770658823 111160022 844486792 497544125 657250058 209761855 612749088 917718857 826102788 969988405 121946685 972720919 588745799 450574683 718894965 70882718 923374887 304447308 371760761 999995270 610935517 206552293 716988684 254136372 61800552 600846890 702120716 951227311 337323758 631699962 713944729 120737452 572728724 514941201 232794283 556708194 872369698 786743223 324229939 1689482 734896850 284130329 496813142 985582651 861305730 594558221 421029471 918734508 723533034 747206896 627482232 198854483 665547287 220439787 27819205 937692927 662154091 704196153 739650008 130388700 105387697 437566906 246068034 102592160 349727896 477243181 116433245 911009826 88592314 287956890 913680659 686377206 755785194 709825371 301103451 642134094 353892023 371076325 495754152 302961073 659776722 271999956 315651632 726658651 303597629 44759996 590176018 25388905 336047274 295278701 573655056 702870602 160375388 98879169 175846411 350776101 301426987 191413191 48594906 185729319 551276747 739062013 629446146 776484182 637607774 348792076 41155533 236770173 932396885 113057357 1470219 544363077 355591725 954741945 504770000 772567533 703478427 319142910 49123163 944155800 108722914 939606651 573258732 513076975 172081126 585850539 437346805 601956873 46318331 921059852 78639769 369499814 488978711 634168679 683188028 259875403 587274346 994124014 891905482 857992300 832760590 748876873 108431168 825433451 432631057 132418324 667376980 564266221 647247736 163744743 438716629 31755889 713036899 354137760 658899801 208786398 741929267 241088812 103897955 298071625 614292411 494269604 546928571 892294848 196415359 743145361 92907514 758315255 568378581 119801981 421354381 814855329 533532684 743732258 37593058 773906889 834847678 51213407 804657303 596978989 645832707 168323381 637834691 821216676 869174168 157115009 168970768 41368214 553843576 159406091 582017757 701813282 386712257 531345905 530755447 722178697 369859946 244652347 620902639 96280138 924706473 707079876 168561661 345698888 710572516 847290587 571948150 326873390 568426404 310924201 974122296 280428602 131978893 103599938 910296031 340520987 29209601 384286686 288963577 364381413 958147197 422986770 874033489 931809543 268786390 350189029 382395254 178761660 34858532 621649509 614895182 352632898 782421274 251530805 244709414 62991259 123977331 706728762 491542779 442327823 810703209 649860208 241591844 945954853 551445818 352171417 137736531 883846971 584293364 34826758 2305098 784708095 894428833 447527450 201748316 29227222 90490059 940574292 605630818 145804579 542644945 656738251 325651155 228479891 489776836 3159131 224621853 369537373 801341081 434656078 800919224 299508419 155969522 533259300 613280896 928704957 311914019 697442237 358578998 532862819 514185220 182672236 970730558 663785054 967801265 895100446 710321420 599329510 764384975 528635953 903022689 284986146 108151770 73263886 430166843 776987322 577308189 84578416 380886886 15433293 871082903 6269688 832498616 613044048 698623445 156292404 223895368 477703854 399571935 832016809 436556148 747376299 688695850 107236019 765134824 86957222 761768722 562037947 272713931 39887432 736449138 185594813 797885074 698191210 471486918 67859510 782580020 198428255 963233154 539969190 225214384 291878189 204947525 713675678 933618299 975649825 759858657 30521459 233673880 34767509 329832387 215508488 135459212 750189811 191065519 65463278 279714135 296211038 680733447 252022176 776800513 901190966 732877037 428634642 909096968 893069981 115560393 834380680 241128807 626302253 412515098 256303905 658196683 871627607 327879987 840126770 195196011 834670126 802903406 263854583 55625355 558052217 307230245 877360897 36446244 441985301 79668160 367247633 97662921 946242846 17476299 856288939 731970131 380982837 409240583 131374411 448760431 109823356 519140850 274047220 97189172 52763496 783383885 213664731 976547581 392485019 656573893 764254204 945993373 513658209 911977377 314090024 549325680 153298673 630178007 674322088 575450931 316467997 752446952 783703106 613058332 780447195 140800391 104225150 271709741 823570409 284747412 163102466 288840758 302900814 365575610 790330366 870539269 293246116 144043225 995330050 666128604 293792594 876363526 165961203 921267830 447046217 409735098 396002855 688987794 229923274 59379439 122320267 277258920 145434879 307190636 947950721 264491258 694451242 311108214 704171117 529641413 438280766 320089117 491669637 185530975 70979181 131302070 764137804 397790783 925382919 303022578 477621819 513849972 100281778 562796072 999012725 325129586 194631413 75525584 300645873 439575949 219570360 960689030 95955900 218614689 443427782 773752745 22566693 784590179 883245572 602095810 275707873 708538594 124616745 186131544 381938670 119737585 581675333 776945890 638708939 965037118 262442502 335524731 527053343 956388263 535069689 763931229 361737005 423388390 65322722 579205531 428902487 465863775 578834892 86089696 733388897 401792197 233872351 48683466 135489667 104601750 761028070 767723253 111992775 108595320 855733452 276854990 540863597 6062765 760452515 478656540 842730065 298552189 57422763 87956723 164934697 917120960 998854583 746774687 885776628 790214628 174995055 344965545 641840723 421445354 592304173 221588887 582593190 322531740 740897946 519152728 116420284 149106037 217699724 96042125 148055433 381219983 871123274 164217082 346829828 240210667 341684946 911411821 723304581 226334713 363508585 446790410 818626686 51081688 911071441 659501380 709632004 877630553 957997854 448562263 945549019 873563915 521886368 853335685 470220709 937116821 92865208 110740650 37159496 44879793 850822649 861500088 560090356 550535411 13437405 937551426 315448094 15960894 693712398 64420359 177483597 342432034 5397174 820271091 80311961 614277092 433228069 266247733 107228547 174596619 442624198 628584951 539693498 949560172 82308836 467264213 295304737 956433504 181641865 335266939 525272424 311255049 469924717 930324202 848953730 737312049 520107586 173875035 330541339 944688710 625731251 87644727 117373295 9477583 723180059 629314331 472761166 519330583 308162056 262928123 756135918 603064143 135553984 177663690 97177167 429178476 473076537 638062643 854816096 44828431 840954469 965793061 486482814 244457268 724601738 944316002 264004991 278327415 822180887 111560159 699976766 524470031 181097248 247069370 935465357 192344828 95801266 236737452 608510918 52712151 978768881 150860820 472205659 706570121 870895013 207395793 984959819 30234584 284653647 480801394 596196446 131116851 590812024 615072418 13502009 714569017 594094886 814178509 922896512 109510738 75264786 606075361 347266288 323832099 196695314 300548903 533587542 96746042 454909702 679520308 104325794 439398316 466398852 651428169 475944175 336974978 643900485 223113654 939273251 109510366 394730458 968116373 126487111 466682032 955652976 345155916 283176087 119140690 808113088 589186272 971220844 974063718 571972505 462086354 876730812 69984561 896312530 583829454 941561748 256575796 16863928 793179721 657978322 364215447 512500671 116217732 274573109 635965481 625424750 503831842 270199695 426151646 245267710 133904288 889737185 760749226 820561601 836215641 765181829 207425671 740248740 638821765 241402459 351326621 266195463 798207978 856660699 471533769 759335471 820658471 603676776 124956100 677186710 179290376 291772346 244656359 9138330 338960750 818615795 964884022 478465419 634567353 714354055 869529363 565657777 77553422 373988095 806330473 141002195 525867906 437504091 104833260 432227714 680828969 105942588 35325827 599525148 205922624 98030537 646304350 817166818 406590506 949973623 182282750 340535279 967620535 594674836 180662745 431835242 507922868 269470083 693736749 89047042 685146377 395336979 752413202 656602640 236326586 777853649 308571345 73697144 511204644 560856791 406901062 300226605 616192310 500622987 223303950 9207404 314970748 152939087 153842370 266305800 839227890 775837408 709929430 613270378 887038625 949617525 421221648 248755465 338845253 888125428 843260865 470781376 54602228 12300938 224111670 107162835 244246671 730318991 179463996 819785175 786684327 507833741 629475682 235907079 161281742 25325567 131261194 274640523 930141172 554341722 661537739 165489843 949863830 634322415 104521102 726048088 261803917 838960184 675431587 494772072 293875892 138301973 279072664 788285870 60713872 725567005 587535304 371341755 118800743 715153710 698315936 359823169 808295669 12396007 813218416 887891345 550291560 872882299 814960819 182970596 433059194 420758337 246756589 544853138 903814542 256064302 650601612 903439446 546970099 937294131 469136660 26613207 637782929 182336122 86542161 800962763 912381541 131306325 660696046 231341597 326436331 709498519 688891673 506645292 208755584 560030230 164085098 291943684 72920578 66331201 261144936 54129854 773525359 207357950 141897936 293150617 726069741 628827711 280520493 42341570 712045640 990740363 445355687 534539119 735550639 556955561 320202002 44372372 266164339 232836832 863627776 140741759 897270445 834006308 390087711 81744890 373652290 203723846 469008463 307258070 19170612 458110731 546617117 776474974 68751037 531994547 205295623 99101754 234249751 647934722 257373241 578251111 597497794 768393951 12859019 7013189 148391580 843453924 902755544 957007897 389283468 986137917 962559756 739658236 640181223 164085805 403176735 878708369 860981438 748279264 771201820 694297734 629768418 721168772 303106239 7498452 248070382 818967232 753724499 255910524 892456456 706727595 579850571 491210949 599565480 649598330 774739631 695723735 810710279 903762347 602735994 177598803 291279714 688348832 985673197 860501873 121377548 931677198 274773211 895736173 949203570 956771684 182153976 941619900 128905009 82341687 876890436 233931917 333667525 436099368 372377017 876437834 506589465 487300770 571212991 50015726 508249899 677635704 546994044 263966290 739407459 27930325 397329685 460815012 113362394 487238167 264336982 86161829 608779409 692350267 880160793 363630142 333083373 510448858 952052954 709834874 880197197 695930930 816951570 561625712 213379416 851047695 740331685 785168613 70469478 409452510 342787621 863279421 971329992 824632596 575221598 704424253 57346681 201757472 470519532 693292993 672728151 888135189 846961097 338553108 476406185 733831509 600334095 355730594 181728613 278914869 250248372 321046989 803325289 829889581 898384112 462981785 453019353 642063935 147251630 912933738 786391753 957353875 41448523 748650901 349579372 178369832 246913611 732846529 825658052 111933472 508809240 71388152 322230968 650575637 687137705 312955339 443395624 52123727 340617021 784301709 694382385 284689167 621616206 972244461 460688473 31097808 517949831 912422989 380517358 776838738 725182733 755507322 690377074 825546887 156986914 707719556 943164137 645326775 312314722 771550510 121996897 401107893 264958231 617767253 577052887 135292897 113745578 102779979 321196668 551397518 200998903 834325906 889283182 884066372 485619848 60070273 485644018 70363562 447807690 400138105 526349386 883677678 446219596 685406010 684703024 756690873 469442825 55553446 264917139 405206104 741669646 212113309 616520030 155716954 360477938 156021334 181047067 784024883 97661853 560390436 605991387 581176649 752925135 702897774 834022431 152027123 149785341 258589941 93838390 739039255 566735777 281432082 54326624 863176369 193813366 244358939 960478993 213365545 256324323 67967301 271824488 435204554 410552817 494617002 650046623 375121718 115291150 309240564 118068114 532736977 230468834 181433666 532481218 895189108 922310549 932510403 831638386 331853147 259572308 405134397 173006682 782948372 367676952 924461231 942621862 683778445 921707734 465836673 111522744 840479771 336538555 179347844 508622972 906273381 240239228 375562414 212172116 846548810 480907369 45560605 638011584 823751760 973902177 640244360 655003820 423487291 656862023 185613049 667997051 123944032 920677311 556933319 916995614 687770800 797425274 988269388 459444159 630474610 533551903 177998088 628690771 627590186 765164552 295060414 310864895 755515879 284732583 328436822 329153367 520552090 977769078 712030733 182640198 68219909 959467956 398279936 450327772 572907650 48005383 939377081 411151952 294012197 805405095 418849393 221735812 413888440 942700084 460136813 487013399 639774292 748402219 99201961 53556167 755227695 560486551 557905965 21086921 650822243 957536240 507702176 592775566 519086458 484276220 309289757 605085937 120098087 739174797 103919553 168476481 137415644 648473592 831640990 202974354 176010606 834137184 149605883 58261624 883002542 500241375 984493246 117512457 174888750 572788877 41074061 269226646 638017534 546246666 84345900 62772565 398040068 4112546 45823929 283355960 271391707 856874503 197205562 984574265 864828605 204309547 205723770 413930988 347884487 569384742 730288369 360612489 259085408 502466142 70180933 921597523 185764863 714334895 972345131 514395713 505409533 247421256 889969657 986738655 142244406 354676238 683289462 211598017 796281269 266132945 103858067 28765303 650559732 635694059 936826148 78204006 197481857 958548807 290269844 29807579 430623757 504760371 672134278 284857669 7811316 106532916 212785414 293698663 624555107 730108030 990866810 298696058 53402959 998160394 931019764 630270698 215595340 127310241 907308176 24330072 330937565 481163033 458417493 412435379 903470097 21886438 209551604 129547791 880578768 368785772 1293201 274727765 608183046 325228072 417909769 523114625 837433089 390528294 527770191 914259555 124236223 388463159 465866877 19268447 141356334 828020741 557096054 450371149 558101318 949015967 531378687 831245119 886825501 525183849 334723790 543536914 420695976 540340718 402616570 594065317 79503402 470505731 157172186 765150373 989651785 820018177 340345712 708986345 406478163 674605608 544779332 453393362 948525716 911621055 863877822 929015462 819152529 947924177 214307304 231486142 223608229 872080041 311184272 358907140 592529285 240271098 148732583 732912064 412151408 404499048 571797704 701037015 729513910 834909583 140016593 608972064 448916058 38787215 118463762 303921609 235994885 725017543 50449580 540243328 489307799 54307589 503614842 15447333 949226847 432788940 589753242 500361383 393463253 596021488 664203829 436725711 406954089 628395386 87713199 381824680 985467420 83303615 174418915 557454161 665959740 584233201 91158362 419969294 854047773 871787444 261485809 932705384 478799440 266892996 424346992 547667190 191189240 383786789 691044864 631574655 574341070 110484283 892828766 253878032 698513430 168097920 186573385 331803341 567497010 709666464 554697070 603905811 919870700 553152725 649706576 973365434 827061724 657232225 425358178 437828159 355040856 595360023 970828929 482060752 9406671 131493191 758333385 742227961 235549390 368645705 351523314 622443136 787701839 252681746 479396487 739252239 600328887 120847128 811179881 611228888 285910999 159432031 574926070 482155299 389430819 577440318 250204980 969499238 867352373 516667675 31617031 841024315 744137291 235794401 782651936 817218904 413248420 217322496 87178458 582916251 669042117 506132214 2275514 973046734 714083020 59195956 430206137 430964029 711549586 228230289 436042939 994156067 579986222 986802346 682725044 998099875 464358310 318295046 382115677 650120773 365781132 493089214 611027382 724248730 938894272 153519426 9128251 351788385 360815369 28188933 797994873 620981693 514670932 192563780 467578108 158384851 335034293 337129503 413414231 761192491 942706478 563971313 186498907 217402572 339261834 758974821 568134047 666325255 369024123 457972274 9568738 671830233 734774522 680323404 734754898 370497526 855548842 254397390 983250554 134700942 666047271 819621967 741535911 120862337 193268307 662256084 810199143 397294330 950308288 308178699 780903334 794157263 88987855 94866194 34201652 205097934 504724837 493859959 821435435 491604788 740543024 395409485 120386869 627720314 201311578 83335932 531671311 243100626 35621677 316609800 450455188 278765452 742145543 909299331 902492727 627115659 955228362 374919913 361750254 755088310 214600184 612605693 413426235 371501484 457287134 815043049 49457230 720414374 729241154 678668495 626723604 310543574 783855293 439932248 600662900 908022688 899229049 257935029 705492667 612263900 256137077 400276843 869698900 923397267 324730053 430985639 733818423 699175506 502542587 607744436 68052154 442204087 209099894 73273225 882318899 391731950 519978449 731188889 136467895 177560735 712774739 798923182 780761372 889373117 316431859 369979576 110307564 21528477 121648125 62804253 665177528 721679447 731052914 145726247 47653610 296007532 565356134 259448058 216203876 684041914 998749879 741338537 350724315 974367106 78165838 494463115 741925727 476837909 912192058 582330327 716271 905910092 79132801 838627078 89613971 627746369 39955944 895270600 859083348 580525926 328411795 460559236 906311923 519863294 515442342 80118093 650287107 931899822 745279911 740631255 318846325 138711540 271085226 293476507 399509581 718532450 364752977 104635027 776204110 278028273 968836412 270343600 49068065 358334056 539693427 21749933 947597706 525782131 915190161 463623123 799868665 159918306 267608566 137454409 203441328 258108401 214024041 124754812 512687478 423377652 976073683 429959593 51950973 386059125 340897215 184510194 476896477 280179759 182404502 745460647 449876697 27244447 21593347 179154477 51365833 995679618 293949021 233038707 654297134 737476167 208016163 210444785 255696010 74400984 162372953 525106776 607080964 987351587 10049930 773208575 421407848 590027075 105695202 564021270 343435291 494597278 285154625 23687443 235718481 740951510 620470478 187155242 312180530 716688993 852825712 905494984 647295453 503895954 146401394 78208707 534876420 63152154 177759653 71328907 296704555 791717136 35957385 808241696 76010323 466831594 427808492 937432701 729262804 604965452 692772470 838490834 647875821 162784645 474144194 575188422 810947660 311375508 745885012 579732496 941894218 845596433 296577548 40222951 934713266 514386351 543044698 998555863 103972427 607553410 782449651 95997558 16802035 705913363 909888046 365228868 327897040 451157088 187754301 42763436 780077658 299034921 731906418 132039973 728389367 397886385 55991942 749559961 727483690 4533054 96798480 930982510 462797167 4071728 456425177 912949381 402404668 731991935 890862502 834229960 169300616 37250012 945087789 409227904 866192426 887790981 350619662 875286856 789126725 438515818 973571861 92704162 757571071 939631163 327468837 74738755 820102565 129905087 133676114 316551991 691293360 270458498 679475281 346095842 542926330 571645487 125860624 597321344 154773535 463828899 7289674 916988309 493029828 263849919 45472412 962462190 90750638 839267108 800045021 655837333 335461894 267749991 875838785 504095283 778536469 644050540 802680156 112416053 924207442 177067759 252398322 824135862 105758665 129321111 422823359 408465679 293833828 558679872 167840348 645995599 904416630 866265702 673536622 939962391 208138894 694790072 721011408 700121358 155126733 239418751 187892304 730605443 511327104 46896660 411666462 941602222 980287924 453054123 326104697 406893082 637518167 380141733 9603673 839767671 432318379 917097614 114075361 331284410 398480801 978784556 173144250 700083610 219911450 44359888 428907198 668849435 7208085 127358652 210496716 251551718 388757278 153116387 662631799 506237021 789343669 987271859 609870906 560478711 572786009 265815482 81488569 218402652 254898235 555248789 371331106 194434050 644039660 115304038 316811242 969016993 550619166 459946957 540213726 873314377 431405031 604689718 869029903 329839697 790679241 499189858 815273280 121318880 302540137 673094571 7874808 812546092 302225668 566170080 917065967 569256599 390836405 985282784 632183239 960557250 69837666 416721886 644808084 869271248 619682184 636961808 811953923 376824095 724367625 632145499 357575578 765381700 423591350 236588284 458448539 256254870 885734069 939689371 339762643 295159043 331655446 466993225 343261436 983657221 203124455 558058396 809728013 151733639 444213420 86623323 206749086 842265167 636790492 359723061 103914157 130128786 95455474 240650871 734276585 165697060 932074818 876920955 376903036 253626696 614051329 736766007 880412434 862533873 513440169 816629806 263795400 173680789 202912015 426201055 295549050 362851998 165965645 49852595 264173249 583572009 805315595 825542926 60468415 363124833 626973263 441416247 764889238 936928812 752795831 807487293 992340739 706648089 111958793 52037530 852462187 345437602 273150683 331305614 173404285 497979643 757033755 733967237 193721105 37028492 187641701 112578824 856402482 164257471 404373871 140145184 662191848 408993800 155804568 586508935 731987221 616531978 284646525 850999964 457109359 919224120 412168568 934320956 888978519 531962368 582285202 595430942 65721906 171498886 127975100 951998369 400530731 986655002 304885177 760004267 446842752 582378865 245052184 431550472 129517496 624256802 118371903 622267187 445404371 550582796 64802810 121264679 193048848 713842508 334433375 71165451 296186693 657029988 597955264 28047979 739409099 462648167 929907466 33918673 424979386 740172351 663726769 605298402 897759599 794234438 206645064 431402525 824695248 640864509 764280426 144990257 641072557 750114663 555250815 585001649 985793331 697849064 537706231 730851731 529419171 221835271 604243235 574267933 878243899 736745367 766575072 153191349 135035287 962518920 809988772 584685835 465035057 42000388 81091491 157468940 611176940 827436842 279185988 888875557 372080274 102070693 907110262 263866159 128646169 621184856 107060641 902077745 291140130 592633228 985638440 9301258 704853366 39861720 516144031 228173557 120268217 645812983 301268964 536601092 992237100 643239489 524227083 561220457 400555797 430642514 501382290 536276152 454166076 301418312 213674182 764447263 129262735 92612931 952614420 111539935 343165228 378537001 53904178 419329406 746509654 839386199 259247205 206349111 356387498 565593555 525595843 358980731 977950443 5942739 209584672 911208270 650248882 48798609 555180650 250408926 869141489 708850164 785575772 611664006 567040906 479435558 178887270 991849442 589556820 270578309 446162943 448141891 232235587 735785085 639356665 176575449 659521469 218627980 253964088 454529676 274383064 307095265 385581633 650028766 868578566 443722883 673416077 862052202 799690431 359776058 493162612 809325082 445072378 237286225 607334517 412311920 84697382 484523823 187221202 947614524 739253678 369468710 993179138 172578467 824601513 668553822 285170566 973104057 586177847 533479910 392555354 56377767 117772434 418516828 757308128 323095918 934248179 15218528 631029743 987975903 244895409 891040618 702152551 597870875 501801069 683113820 184773880 255455809 625114432 100601413 56004929 544700302 674480028 981965986 371742496 65762145 98640508 803445834 942991975 211594404 479151001 621118890 875417543 684598381 619882241 624529317 650907552 594345105 489634046 986012815 974705943 899874461 932270569 943873734 491890816 532618993 680617761 13613484 2004489 955907275 34946533 556915277 37344528 78769 731895747 754722808 133229655 224174743 76811203 189515105 123018506 211186975 18248714 286177966 563810599 417169934 732712976 478194133 43548653 255825407 131343503 660309869 558973859 272697341 352934484 230200882 194571809 397836073 355159764 962765575 112999810 399355730 161772462 261647853 616098797 902667045 387995755 360716949 766668198 98237280 72475827 858700394 936900658 113323179 400677855 383298371 68890948 800177626 472470414 87484125 656761100 416011001 20326504 95854984 763830101 764228631 994701952 980208065 115019075 431075650 474477313 891952370 198720795 732574085 967993712 168677486 532995238 693747440 114412163 837441547 371548553 512423161 98793577 740882503 424413891 260819 329433317 450797639 352473140 511477306 210855251 740256016 479606959 968425240 853613515 137143161 943295048 289642060 988281519 582916643 175433984 305186714 244782896 234584214 153110905 853948012 171893653 282964864 259467707 10856433 663190923 769478976 72783728 857845060 758153513 910471123 661274214 192568649 574371938 546791048 939215179 979913834 95368983 428376586 864395708 981414900 54617536 148055871 995849279 657106791 261602603 4745850 99013623 248197766 809201017 528002548 252720498 215134202 458422206 106479312 80196184 384797993 610147923 249970792 593360415 723649355 983044830 300369905 662190972 931776703 61280947 455318130 160111249 741663739 942509498 217305901 592493500 576782220 890406151 918726017 145187768 584902759 724119654 554579317 500728703 218759326 28713641 433196091 55504239 942344917 104575363 930643953 197819432 209694941 307486418 425086281 727115544 997901160 135243220 530050419 306290369 396721802 946729859 636237277 51502293 296727332 596427185 531026715 878377516 635810137 327130992 544130978 851841878 463109577 217294296 126961053 455197719 30705814 807164995 803634383 93896684 302745825 363420321 611616993 701403830 421400771 800460129 741219943 54348179 396792043 634822950 228009948 362248796 850265623 87632969 461793080 125239656 471834074 119329747 664495130 917196817 150670928 547009688 788553171 56260836 320703727 701386795 861297346 975026916 70712772 271852953 337984686 927809693 256560728 36061470 667599740 489608427 566840849 778394943 920758582 233489706 910880741 602801470 488159813 93993123 417724831 879314365 711195003 162461720 999976116 736433455 816553 695693685 753902448 598372093 73167905 223553636 808565308 733179815 70607222 406580141 287172549 371738300 693676588 874370263 420077684 311508420 398733952 915470614 624856541 979601043 730674951 443306332 122955675 490051116 781261751 726459689 286065753 222196321 671068897 767107969 3990398 534232410 581947141 126982206 579293318 357043568 592742351 194619821 148659348 877473434 423464706 302866537 623047710 830062593 449851690 460139411 674482959 557593864 622950834 863591729 727838663 241684400 245035970 810784150 815555970 978263238 636885597 597798692 391819870 194259651 247814537 595241247 939842322 13564864 823402418 803609717 972891053 952264603 518317190 657197466 685088100 762741414 761331189 423767195 208020044 171780707 986966612 46269957 185293689 397118347 82557605 695408538 298362971 426298154 649195128 758360002 889042219 774190510 242096518 103501331 285112475 353268613 326649064 603400870 409025235 53316975 933313070 857919212 314371626 658212922 726046487 352224752 640733024 329699699 2758668 256530625 672052060 263851039 626238078 523100531 411399499 83431719 652911611 519933145 431846314 531622809 763401406 621746075 8026303 188842841 744880749 406165962 912489570 91599044 76473908 422938725 841758799 717037703 410658723 252713503 258841540 621024466 901353079 442911484 776135529 258950392 888098685 246620391 998579076 327091615 614317786 943125563 563000007 630242065 490117318 652294058 919745286 491083859 763624070 814447598 856452615 981118704 895668859 162471783 193505413 80224073 707239200 517201117 512899350 164754446 634228330 863954139 608395127 712296727 30974532 416832380 632728053 463849350 662351981 472475760 40393878 925285389 303014852 143859127 792801355 943754847 905764793 384212813 105406117 226161934 349326561 798813893 408579761 384615002 767592014 842911569 584760066 56622505 242457217 562252142 347968202 800208795 738667688 240767282 792225212 771932234 671203131 849843002 320176743 174381810 860995815 150706859 95295766 26212847 143028354 741385941 510512883 703690705 122200604 960529509 578899350 925980084 635238201 95641472 519864127 594564402 680751552 959555059 349285914 494327233 436374091 800472234 21970129 885210517 478693721 159854802 289037447 590843891 514023527 238527646 936177765 848095544 930534204 323567023 721014363 262923026 413455570 59955690 509947862 875993530 113269164 784744526 478475073 823693494 911664837 248815630 596752637 462353283 905046168 671770370 123516646 578673662 207339331 856235977 494113886 380093402 505111596 587975450 887305892 11421548 745201336 727290619 932380336 981285845 388400487 667091045 463157417 114922012 939614110 875258988 806625219 702669115 742405850 496454700 877314521 961809849 495836960 278864804 619715035 615853968 549564211 281084763 465010990 790622945 657262487 702783061 329649776 890915654 121823316 313986637 165918414 90752306 36605707 580756840 990909684 715602475 703352642 870475469 17946338 350305793 81874626 761570193 121854681 284080355 755890695 857958747 479775602 456398860 557632878 290208417 759245916 196174570 624032930 390935054 708069795 887141695 838749576 79913761 75446703 786980227 389833598 926152395 387914856 246604259 340862693 243280234 969631272 979329039 459255250 698538275 564504697 129553161 736302617 58561844 186893018 987968190 406587717 209369751 1463346 691176189 483258388 629380912 634599985 877667427 962015070 913533828 139443470 950072314 349941197 81406916 221333627 757896581 315038150 716572023 684084930 484375996 925647670 405563408 869578535 567710582 342683917 228057074 9728512 823507469 964393506 903146306 452354618 833229036 34662849 958718697 36747089 689420304 544595009 766147405 928538337 832062294 370611676 84911856 586868755 463465449 74579981 287561873 126844103 460849177 946840683 853656762 710516223 410177213 43250730 568881645 724274608 369872251 830445246 216885850 250160948 152205170 255174610 963615993 402198961 965036764 359298161 375579064 739062213 35297715 452289088 976911601 909242034 70483281 625124285 273108662 485452084 344274186 933197816 467372613 60469222 780132686 383834066 935903344 866528321 150407202 275285744 501294471 5508915 487608923 85948594 774586420 6579475 417264905 826790912 109874128 228367843 582327572 961311369 703975346 456612976 421294519 382338308 544457386 153046021 30398583 229916699 523658417 906399808 386173210 488872907 892534488 547472624 436178709 82434288 512244800 684227945 236918467 288497885 629997743 443261981 107121820 330494074 496977168 745374820 313950244 999155561 473397013 157935184 795269622 219360884 56571602 302617477 723597652 259915269 767245853 140232809 856714594 79461426 973796895 146041205 954591169 708976167 306940937 851223268 281022684 221733345 488938165 756996693 203948628 644622184 551024862 733819398 908308081 744111017 192919554 829182642 650028035 877510346 397742784 674307586 534273664 465121498 933330536 519993567 106990701 434783145 541406698 630689413 415527156 528702077 332892140 535127999 537311637 127670448 334633007 457449459 85745101 730087179 71495673 801234207 91522502 225450203 653092975 116580911 341386309 349570973 857636068 647776750 521135775 650772573 933065423 919538138 55254873 91283473 900151688 906751905 505545342 239167972 363731643 556347845 263653783 916320463 467199616 999714875 596603636 247607292 336413110 576757710 402237418 921770832 555929697 962431315 405983584 625401680 290287013 895844477 902690172 455537237 561893319 179218056 512099280 14768426 814030908 793252786 883231567 579609576 77784423 302135641 859855386 863692070 77514932 481107237 144719452 937669039 687433870 26383181 830198755 22045681 68834408 39264697 55271864 666693817 995856876 599222974 833418389 698085907 492925543 273107798 691936754 411795633 583325387 547075230 26956422 950789408 344536964 487759157 432027331 321184005 716807581 157541470 833554785 763637500 44475980 295962293 391529081 452134626 256967401 293177336 877800890 282776449 905934903 867071177 861375390 952660283 326101792 139759438 683186556 815898050 438594010 642843937 221698627 399034215 802385280 493123115 89081131 181951772 77627960 889898907 824147766 534591040 726694306 309513543 160953980 830936222 698387101 191042580 273284851 735623321 98445693 962547787 489360077 890340556 270773405 713864974 537468791 227909694 300402782 24839686 15629607 961994092 817133379 349647672 161388651 103095824 926331048 792141926 209913430 344959737 37940823 690228423 510673792 897216359 224468672 63097097 887336710 245257633 409223858 796688429 735558475 359879920 368135436 849473543 240115091 296187601 476889002 715158123 933888279 408365583 890268489 444070080 368011977 146584782 458124120 603132908 273660927 314093003 741180465 149808414 186258050 655689048 970612850 199126568 877182242 118563888 884087353 247164495 960855520 165372447 81140421 158551072 889186719 321989487 84384521 945941435 621763578 589777492 327662516 632415142 936018787 57820750 962004380 569434246 705350231 196847381 357235228 366134899 186148586 721559019 430739584 107928222 984830918 788294185 77893323 473330330 697370955 452858650 88135556 695461008 526403444 368379124 782889415 269834119 110766470 979357249 318597673 417162030 739435668 518189612 629170895 555332455 414787344 827899536 103508743 787912607 566833239 869142279 536199199 862624019 84793558 410728417 341484547 629480120 205496753 582037381 924993538 607727799 306475851 758335960 454629867 653569827 662891779 413398095 354225667 784606514 370614919 325481636 537617224 859907962 167499994 482341697 963605528 607875808 906102665 422658821 305706795 300836553 163456745 714540805 927383562 681703982 951296779 692517049 808047680 452504503 611547538 421822480 580535764 174879205 74136112 683489395 781185219 110439248 108741962 140066145 16490351 942088913 269681722 697360632 312930600 94462821 210327273 187555574 395772483 937065878 803244704 924109679 430124762 775621179 483315321 998042909 569548368 442991975 788898793 592417737 204953846 37126225 882878755 42730658 300635822 309353336 144531450 946840677 782254991 761725465 440640882 953940082 868042973 657605195 393543831 723541421 668936622 541599126 815026531 720676641 542953433 827904062 792635931 59478453 712844379 371113556 981178181 614219289 452765935 268445362 847732814 485080791 872974492 107558825 767912654 3717039 397947713 642439232 408814018 915268254 550473853 685522093 940472842 955234663 968816173 370042006 347036850 282226682 965755117 835208587 602965071 999997554 654466198 726228926 90235621 593835334 533712264 912004683 281124244 362436737 788620194 827057333 909497697 445583375 190421333 609122068 126734382 554058260 73810000 413686151 383894989 637056606 234023568 965687235 825501223 34659917 832570098 681784007 360645473 731338251 726501662 818356568 359900953 237632903 927411651 944436263 73243197 241177382 584377765 474024098 981913404 143762539 917615950 783858133 517657826 149739604 89494595 812062100 617356797 491068808 1050192 327792796 535794237 181364350 257361941 316442377 683780181 464972261 842235872 63525012 551101059 523062895 491212977 760228955 352239846 413204181 482577176 830521668 751933058 108473057 864641565 259716800 77121620 906651149 146874835 397015583 34468975 589886247 679752570 256007245 537882150 390143367 879792712 282134206 557071883 531249510 418134703 678589202 935843099 855186449 285356867 419444525 497683875 736818420 867999846 773350419 649677111 81320427 649053623 668064964 104794369 264172731 24897461 783642465 794602780 852715183 361475429 743968508 529267657 955850807 59232180 783882933 513470345 142997264 157030913 319491225 383535672 316608180 849803042 115567648 319153224 154921474 216829098 986824501 922830563 305050399 446828582 86983578 882667124 51317193 172174451 259915057 482314569 970443975 926355697 141199641 533523325 710105852 977712020 303731583 828942232 928972582 180648667 988849848 142875388 596814364 825262785 359547648 662967800 34472770 128070416 280377102 113640606 130863691 506832402 373530882 62724665 395835670 278371432 718678917 672091301 170360906 615359968 785390430 587273769 179639282 523530918 703093054 335199276 283137775 345594950 754621230 101792703 325972420 426846415 613089053 217396167 495709635 966846088 571640474 681489662 433505160 892676586 222239487 434280453 722597555 857548492 334638167 705291314 151680851 437881263 527696833 834103385 281845825 247946562 539795922 634710756 488753737 657231321 286870468 954272534 67512564 35071716 225109108 677734999 561266275 45806205 374363206 176732226 858512296 302557320 379958754 406682135 140023247 878240732 644640849 338750131 193868122 611769603 797842498 184616031 434902493 791776406 762368469 609649485 607150146 565127114 388556682 687887883 328365841 423407993 757055061 363037416 371074472 340349870 265618670 549638040 428780563 67420283 419279119 717537963 524267777 78141766 83489726 3875715 277717537 231108911 319806492 627137419 695969014 870327226 883205649 141200039 979550820 135445855 485795316 131039556 857798020 818154922 705584326 683367149 968442421 335059642 795668758 944712211 931716813 361639926 720819202 996762737 65060996 277191184 778749131 85926738 685871250 360042830 814436902 266421433 278357739 188472688 687372955 336017957 483592869 298211718 498604025 412974682 416577198 287911656 817772988 635534215 123340522 456703568 662713187 936620855 772032991 589352995 703230679 286658856 402688243 203692251 375766695 193152578 46909874 441531011 630593335 702626134 620865715 348603588 634494614 262571044 242275950 120653718 24752542 476874486 887163048 810307701 385715012 259952650 726348836 302381937 343166396 666712252 398701625 274773105 921633313 728347024 891937365 321564723 602863318 333736036 591913188 323832378 636131538 386112784 465233762 67737698 477227358 232772330 503649358 372676610 498659422 706996076 951199317 860036563 390437777 263321580 418788356 759908617 789310143 599060077 489771455 353362683 997186036 177943108 287950883 857971911 482843554 303561732 320331476 686889599 665095437 952296034 971268627 797255357 920371570 100772395 183073841 210563806 28686349 731994364 769279361 890450781 271558207 683885222 600828074 149607155 306525728 930204178 167540563 628550375 49944004 595489296 430926385 10388565 494941605 571591087 854890332 355065780 753840710 873422201 384856204 944132606 485569261 880260152 882154184 736700 702274475 525752556 580626609 65753528 573426702 805445274 378769440 727553154 251526862 592044730 336901822 13519624 51850473 938025780 940095057 337838808 211448609 705450375 73627084 415859656 613493361 724643278 345296953 956731780 755971085 223770694 491167208 896649833 898496802 655031284 593363589 549117890 528056476 882724914 178031304 354138387 336191231 106032967 700334439 112842032 16511703 577379949 160572892 445551325 576907699 204166266 945358830 903788255 493449177 80818957 994949543 145278162 893149309 173152122 843103765 565799102 844915443 8003292 962951842 626619914 492113207 305744927 975855807 958210074 429648803 737911832 972146262 959591900 847082711 4603170 521223814 376679610 592879697 89468361 526516184 878401542 148004023 83746230 570126171 136035059 247739992 653838492 157411157 171133958 742496767 908634428 118716961 85468550 949304961 175467554 995303273 517681117 130749800 466192106 82746385 335371828 127341163 441803900 987373399 374616115 673875480 795456368 448394362 952591542 162038319 163774202 347066330 761022434 445572906 601618912 876030658 816033360 365522946 696052015 632390171 602660449 347892869 381798248 448778055 196359979 827948087 919901973 525096042 223131496 868675459 902302801 942901183 184309760 787299592 514808444 838468315 101073051 949312987 894393029 601742910 739110307 585737942 545353832 493567882 963484644 874521528 530702130 260582092 350846622 389886315 949389260 276969632 243976429 569133544 728859239 899632013 562868735 492498318 191076759 428982157 47372297 197465295 162769796 873567136 917895321 905350918 658364536 80999580 727658113 989627341 731134237 316835071 905437627 145188749 189344062 753447344 294845225 611228109 789731841 835271929 601680789 291346130 361345148 959401536 952910036 726655203 527321642 423733345 171532515 401801189 855304492 122787123 810073660 518056811 512267415 574752209 450844037 41541951 800976573 176566732 517476775 645204387 70175598 543542539 798787137 698653982 968084056 948609918 160866242 843523883 89125265 573601349 910221125 387115032 336998903 93635590 999839963 400012180 233388677 636873671 650064201 470682041 774195592 788010323 627811362 349889390 621374625 828548261 48245256 494627712 544208935 930206095 271600098 739626180 247186085 702251059 498598460 708082132 924810398 607898311 726872149 561032985 473986910 364692044 631680143 82221813 745398203 566095275 988763052 990099649 444643018 75624132 262948396 165172885 864329498 908837012 591168841 332322267 264254871 500718392 994315533 383968264 730193939 301402687 19918728 235022144 515121398 853161847 795698461 940006002 866558408 948980559 492979815 184442671 521687437 959909518 694089680 848603162 762774281 47086318 263245837 905972923 389739288 455170705 501737242 645066921 185174077 496832971 214605873 900129416 963164623 15725339 122853803 849051738 67544032 200548302 813812026 501462924 899840634 27591571 396221822 353899485 676698316 419052202 910356523 18889886 557521227 24195995 735867899 806028625 896026501 628861550 864317564 743119702 359367868 494123571 175414764 513630396 41176429 815364195 979228675 816623532 103113957 606401530 445215747 285585153 958633902 203043157 430584391 904481220 176127208 613696518 63707737 644132770 883696768 193868929 562437190 388215119 5661067 234385636 770115868 376912652 339703615 32954074 937172799 947647546 392995153 18394231 726378406 813602529 361934261 98867243 853721069 575463393 160298157 118768405 203996030 990525233 818615976 298102345 535336153 455757213 489591477 260790337 39726003 399807652 633792099 196296370 107513360 784519070 676925070 629625727 34572012 275436199 500220258 705085854 101010929 579120103 100819687 98408258 375449938 165972551 562719885 590311861 120475385 280311411 290595361 130337600 337026004 651375167 807913790 294977794 149204427 401923270 785774841 864382205 833858444 32885381 508018796 219170706 996802682 860174514 497626668 266451539 353169779 52307421 678933539 845675498 128532363 187936747 244114105 759082289 30023198 39143380 992078584 474741282 873466634 479857076 825350187 168883203 989486923 787843861 899100841 306544471 769892680 73682172 688284876 35477228 62910856 105814447 631895017 903104535 255142503 167563241 367835060 682267914 909371587 32568411 624626808 114482685 867120766 511431874 899041970 631799337 992780637 618839620 6611223 484794604 313044874 49338758 729224012 431576192 139765135 761345486 582571394 754192084 780896810 788543325 55252225 893021458 916854079 197168369 352472248 128055745 925360482 318771527 551684829 222019474 631999822 394641553 933160274 864455491 388087637 646363225 31883462 775840519 765790827 816789320 899662201 960539366 432259626 637400697 16064129 904913471 887289423 388928854 907502307 763393557 887462920 320691680 541953068 697980743 733882299 702784573 387959725 217300818 14033077 318379311 53976921 45612890 388601041 409712184 359543477 379027461 893295293 534136535 178590670 91142481 236495978 982656401 504820408 111305403 280316856 771732601 108732061 748202297 596189264 451702480 733321668 111050674 339229953 963422370 153448589 298961803 178563227 930919056 47494149 729834672 735043250 341107951 167781895 503056390 440593227 111934337 45010272 576714156 209915770 244064109 998085248 360633319 766572147 38453996 29721446 655088773 729228176 24207486 129908518 182579727 857543746 391257383 30755705 151990113 280491729 438456042 636066404 930461692 21456859 699585656 340958505 266787437 478017517 52567191 83664353 969530640 355742811 780538100 912188113 463932255 202160393 730449303 329899597 762487406 186303143 637929649 725525342 292835927 495444692 522795158 118602518 263800242 428467419 126591522 957907237 159606061 42086518 829533230 649735878 107591660 640746151 688480017 587364723 144654018 170825189 189944712 674755675 600300520 95096105 569634537 991550445 618801916 763376189 972950839 849072897 380089438 505574333 209430758 592662602 444093342 858454979 77115814 442467792 946437555 328293215 809953254 669530487 210539416 853179329 574706358 810057114 86701024 591031418 7149190 123076729 961903276 155382725 887424367 276035446 69269848 792640042 297566822 805969751 994167534 532616509 913547423 843440519 984932807 433708348 628323246 350277335 13412834 229388599 867932883 996050596 588201672 564751202 426296501 885374299 601790863 922514540 418325829 773152791 716620596 673088620 595478188 523042696 725403316 720610887 670003290 231217231 524116927 571566927 881056312 5054135 417323878 61780405 658136576 650198803 492583279 998237128 84423573 308056409 584760851 761068430 76458824 549294408 383605297 556037503 868511672 67769742 593933426 18277356 280444954 163927664 92162878 958983746 885547364 588499422 907633782 405917743 902006828 650874914 572498062 580042853 753822922 780395201 299715831 330330742 824144102 41481895 312065416 158679589 880249203 86221902 459413397 287286435 779295712 422343534 272337866 914679688 748291604 700423141 629560019 715861894 982414866 304797194 942673333 167532972 207387945 678301575 115609181 447468564 420550083 321449614 186795473 855914094 13737188 242178254 713729455 96419287 346337624 573210144 683324198 883906253 326559562 530358485 749713557 612320807 266412861 312831948 484536451 763896769 51177047 686100778 94306220 61019083 560809791 250990545 250424170 391599377 890436259 239346680 367020357 465987228 691052565 312106229 471365892 77431229 254931614 145171525 226906529 183494581 826592250 188959772 572801189 233812586 745527290 14192828 853784744 104839964 128409010 451756499 754616841 742879499 867003010 111165535 923363949 170795481 758439395 898470400 569933871 929660005 617626557 346813228 820718716 334833793 36245885 802072960 520505826 164840588 872205615 503632209 801990735 522802873 706397715 800582471 647485042 374794997 104283554 195215546 96019186 382877592 634691258 314323066 59454054 902859985 434594945 629097924 895440646 474805139 661881322 365295725 150438730 277214864 705691331 652284147 404988567 48576894 213308457 748895084 930311097 108775518 40278557 775140558 507745099 727589472 365071367 567829972 1052246 444656934 874423994 578348161 916307017 643461532 715841445 363259701 199827845 594141784 915356580 999067350 777360184 626420658 479182505 86935079 264134397 362033150 840411211 193938092 399302453 570985028 273434714 155368855 411742568 673854097 458166780 386300317 581957136 58268655 151811625 742963130 684815041 137253154 213487851 242286877 489798249 754818445 600436284 229323112 908331699 693947372 195420020 456891409 693115765 767023797 525615710 88972401 853301149 201940364 691486983 423649347 575424618 209556973 443807601 891690297 990027613 271984757 381340580 985153905 416186508 409882187 599566408 265848368 881778735 966284111 120590098 924006746 763315516 79513031 289730113 946762281 27592290 56109404 969975558 331462109 435841406 877679150 11587510 841450040 515511100 687592728 473925144 727656118 270548234 816542911 926595492 88948610 280308933 633097935 964851201 297840100 994620301 757287088 238806028 457419394 803452087 69505624 142545638 193342611 236440641 304721752 785779547 363976005 204577100 164272480 424463364 365269982 204828573 24947778 785127745 300695 487969335 948705372 609943915 95552188 361858992 71802201 451677836 417672842 612623261 157480648 490474778 832324572 367331942 662764998 12280214 146069298 226217955 327353039 790515000 414321706 789212419 384635144 911932700 163911933 315146013 344921430 33175940 860447702 419571394 501569448 154651607 71677486 857766301 38981647 433224271 926392686 806127291 883311188 260441844 191179460 110779383 782826775 349550341 72850672 285080432 353475266 492754566 156637953 291270099 741059919 558450519 156708962 920668008 37826620 194787655 99894142 720481635 707475874 701302550 940612546 863157877 240596539 645140401 599406015 577809624 263731922 200123775 995518600 82124300 761240908 724597516 929273584 151800466 4720082 127171484 579003399 148475091 140157920 338665812 613190730 646299444 48121066 241975576 789202532 416307435 366157589 796837354 251468910 941232013 798184224 945512286 540398388 249796974 380628544 749681825 743610250 495902765 291342191 759309590 724766033 873914220 966935223 914270274 365350908 149475711 986354642 846560441 202417990 754177425 102941365 920209249 235682073 492820506 701065052 494115315 653351176 833984954 32891776 6755037 679503744 346867282 303340735 206901223 86990331 760947755 421684071 70742556 864324019 800082952 853015390 18783881 218927219 880933828 715996289 550330936 901643336 341294474 65255014 520027055 397729531 936562534 724695841 325964353 250712250 95826605 440740047 410464275 283665358 629649066 676841542 769131369 636846819 254998281 622801352 935187144 949222286 658600899 563957439 985460270 771430614 699051735 406765966 565658179 930594469 782790255 121928067 830191837 308241049 937004353 36746356 530386749 988579473 619140112 971784560 439008492 940578237 126677090 661027766 544488802 181901271 448037125 821604002 724982403 48642546 929075186 253984017 16990194 795338413 446180300 169159323 953420197 902833166 476465353 257656103 963158035 839271158 82559182 459532313 537737704 971074005 738888544 297354121 203401581 73916810 91720270 16506621 246786857 434456873 973501540 368632665 610061814 301755504 81247915 270571023 504239102 288317579 880618868 823856784 935062446 724779390 690080863 235946816 65455930 727482843 369096592 59881274 606473405 152993204 920942104 911123209 437100467 734693298 317910158 511691815 371856002 723456802 353579418 198996060 679379381 722061543 503950894 18195250 651487460 919744291 471053486 349747644 522155972 347960713 859728825 356368324 928441088 996698067 919869236 252389225 547426657 77548083 480925824 167628327 634370390 200519605 477092569 349681233 652229828 68249401 978993848 692178221 314482965 441665622 715289813 7938088 486474500 22033202 86646367 284510280 719708449 375683631 870755315 685956339 971874817 133029621 43648026 573293325 406880700 202256161 637457084 843632891 441415147 179460381 956365994 580700736 79028146 194018859 38330893 333914076 467274510 174188716 856362998 462416543 170659481 781685364 283369817 109259698 378611645 55733298 336183322 471517956 721122518 379903922 97724315 736332844 613349976 366079138 667982518 254411241 243084646 178530510 64702172 151828113 46157846 316103015 322884665 291324479 352269782 728739649 194819708 899863968 822494407 986207511 807135642 445597706 963393333 221533442 685375212 346746002 528655619 316158738 751670252 939546984 685977648 213287079 128595798 657777152 345794410 889625460 490944948 874921379 838903441 384921241 792479528 834452663 453959213 323924347 203386034 289654668 830158698 922633412 658818058 78175888 437754037 919934319 84444141 555195776 84239143 393203128 458734397 333017055 534619814 84680427 666732080 980887736 287788634 989009366 380733683 492276758 313760298 866527304 143519809 891156852 595405320 770781193 737762709 450691750 25289535 808228392 494494341 326895286 886280651 419946190 819082255 986750777 785903734 380955354 583810276 989705713 221667694 478258405 871260572 291118931 711235845 475668763 445919349 470876697 987684117 920396360 53425860 310709458 55165911 551523479 347937190 892031724 298245347 616838965 111944308 537051417 919100323 978505754 99484785 896709744 23875498 77119430 896443764 439755700 864304166 10097985 180636959 865297865 287857251 692796121 802544255 758034059 371113068 368145808 989093270 345401768 365776949 924071576 427769396 905393325 204164690 833470351 570816559 509485766 743284375 473945362 848486325 910787771 327644605 403967340 865765923 565493137 476019946 359585843 750590838 687070919 982578280 374433508 966526369 501917025 520175041 852685091 566872517 892751274 652240165 955164867 643359220 388311295 173511024 268860445 823492935 418780043 143180439 739877713 230865996 153903419 232800999 889356625 933167768 758261783 557781099 533375968 592978284 12213487 233082879 423994069 19127100 43462552 756203022 964088297 518557615 961316709 836734719 333988824 333622750 559778366 220717648 213108594 323209363 913611073 46085479 982948429 713585303 683394516 511111654 201977191 336243304 220097391 628045374 903872679 259147333 561968839 21792256 988277278 912276781 176397318 946079532 77165846 49885408 583002840 204840749 600215824 756658811 879751276 894391250 438047322 639285193 612015685 622279868 388006275 41806251 102640842 149119877 329864682 616354053 4114667 910994125 147780096 786341466 764017089 828834711 228559798 576392721 582914538 372166083 852485652 183684705 440323763 664748421 279678018 452994538 331540404 782507173 356643861 203876463 588479882 270906837 116377735 679983436 158593458 891473478 922611748 144441976 279817304 529106787 614262232 691360962 195805461 88508676 937292341 47873350 681302410 73276450 527325176 590842798 747281247 995098268 891336394 477546292 686970068 466385537 129924884 357868324 17257035 136665689 299441772 601607107 478775519 601083966 393268027 6832128 942203001 253683243 114298021 1395995 641836543 44616875 807307139 183148654 40052042 492052786 638353720 11889642 184524635 295213746 787830759 36411725 922314407 992917608 971446467 106187791 305054382 349629945 724246287 411607431 484882881 755590549 667993599 614819425 266660382 515983975 781516923 899800451 107565444 744595547 530652270 283550169 331830707 903665354 278677035 820527172 490026917 469095776 332979167 978300549 451925833 601681022 338658039 6259589 16679395 646166080 700611811 516920084 935468303 853629860 806057835 737963434 812919180 579391853 575278217 550858523 657727454 90934730 132879542 613903335 680161279 966691206 844112615 817693192 565420858 12928778 707534249 189038875 916938132 16228508 545593993 501051237 693926401 164801522 924103826 864984528 612806661 593830570 712147870 51871438 478190126 708126612 306209108 96295574 586261402 350332056 584850681 417386967 673302810 558957977 515557995 32563159 369276551 563302584 500777603 976115919 465992525 506382955 700116850 192232208 478920564 97084410 503834125 364875412 513824055 676353539 644384344 81963811 729144141 331203644 360845159 3338423 382184957 955455410 997952943 678887126 976562202 700909529 139161938 502753392 59333168 136579744 781479715 370294603 716285343 611741251 78702798 646233279 414826878 117692578 8224596 263493099 75737789 9176871 303764761 761957171 797692466 226741389 276294189 594428624 776393622 133066189 837667097 993320073 384162197 502638339 493141542 315989820 609174014 821293272 588499456 974454486 52248439 888925419 242569974 763448076 657037038 854062639 230867902 493394707 463476236 397841775 839894211 826375812 12838598 171289385 835534225 936292235 409008304 348542715 997718108 650007322 543976764 576773927 836667837 152412592 887078470 510846041 625481412 881946723 615055370 276450964 808874091 417080196 164231907 743872125 499063877 592000386 180624520 218341990 779389124 449345267 521920532 149454503 240714769 63150944 326532635 531360355 567148608 435009562 462200595 39078490 247086132 419294209 982900471 622903944 227149709 190813887 145146258 177253201 336528934 775429635 161085588 436522731 706637688 284283796 877091346 598514308 706485292 34812633 127604651 970107373 10475803 424877773 162692897 517834516 802868673 701549708 939400186 113174003 673672067 480901628 209638690 129483873 451782382 591606619 64380964 754114563 300829942 671303521 389792214 159481514 852117077 740794879 670017155 878631258 703846453 111763094 102002048 951124315 230195235 151432520 399678806 458999814 778863723 877842888 223213361 333513791 72652611 115408089 767229506 681478173 58253208 498087597 474815465 451716251 165152080 327656840 778575609 294000676 837938875 77401455 548630366 870658173 109415070 318197560 725562786 642003295 364890201 223760149 152288582 821574725 283495698 232074717 94916158 625262396 109277915 148534347 972357711 249463769 202322112 82984524 334715296 44787943 183384972 965347336 907333345 143417419 415808870 11337468 930701582 972581229 206861802 519332094 872108944 37945885 248541628 96910303 17063303 291462960 92679611 159965746 889511875 913317453 886023469 415141208 331382977 343731065 614173865 40460567 783893075 998554860 59194792 667290307 147205516 342615700 966501881 553768485 940478702 196539280 224587385 641051377 172892682 394945775 99927676 867823694 401211628 292977527 978958940 909343922 137421038 375091377 281503780 947712628 365062049 300334735 74379284 279201767 844739066 254298253 741075071 428540560 849735136 235320913 479816838 935134150 120626523 90935895 216546248 26571782 754157962 369161073 82666367 143330992 42479532 672023069 52571936 53565241 198549402 161902516 722054259 659440488 82242032 415349544 388922481 433864567 641362216 401885972 783422788 631302583 639781598 96813658 574664665 540470538 406169882 230420480 113168298 697845424 363064143 708532157 661834566 470792206 729586310 477787553 426370403 185691363 270378461 478778555 341945316 990870673 736443746 96491180 261112662 788647418 41724018 646711133 522504667 476559615 227817188 71907133 287486570 178232756 174365183 687895905 709141311 727517671 217632939 641331324 225773830 888905401 654571861 914327424 957728486 1425770 474884784 703562557 447211725 228043128 415472386 66176852 419602998 549087714 107122742 344328415 272805612 566755118 340739652 826120750 121562427 503742615 104040970 51339748 675261000 955004077 260331486 121804499 229258063 718111549 808419220 375420266 85856128 962458950 454345720 406718046 756228052 826660169 967303384 302087025 566458541 733906432 593801963 278592453 74126483 433601516 618945871 457581528 234063685 654317426 156939094 656701291 430202216 748435827 233695569 904900745 934874598 695173972 711088842 604021394 986556281 691203482 71321098 76891240 280629944 4079677 316176137 461178853 432592992 100935345 881574580 857124952 960550808 704401137 42698869 625451887 721475491 931944201 763670539 283359201 994342058 746591071 175623037 89723118 680576216 346235324 468420854 380355673 443987733 743621456 52791432 872720404 343219744 318560932 936676598 279014206 786725265 417686181 427929585 289921903 289544612 964075427 841577035 235115742 851051583 371378314 368210169 752380393 472173812 532665676 447393735 818877857 24721848 603829545 390968393 371567785 851715920 595659462 402645298 703406714 2611970 95566718 501668079 753228946 272111469 441485439 733966608 59207990 26056604 87559936 566059387 484870034 172531066 129017393 834916464 481992029 58642331 427929510 976849169 535918220 849791990 461682913 457375518 835448483 489088008 794076671 500593530 173814516 797411457 184650159 804958871 757858702 864634615 196022738 269148439 536205604 529362578 286680183 94881068 583892195 917427130 861081970 925023766 448765896 692744268 134208436 499340470 833370611 760256586 215695980 633631989 640585904 685746230 92112654 851244962 112410927 638420466 888981540 845470899 56894988 437664257 103310831 471422585 962992303 324017121 746249979 85243918 276067621 432151525 135058843 829059188 743217119 769819175 261754306 854169221 925119458 967771164 221818643 109888197 60198005 505544805 779899540 55151785 549467580 437143166 659279824 587322275 335409100 838403879 355218706 173569621 458948682 939245217 628511101 659600171 318944881 757329352 296432583 750696791 130171454 551285924 185843944 438294359 536720594 906364570 43977416 587544169 181536284 263316525 584186928 225803505 855926735 411178750 972974488 681510490 897624251 355598825 797591220 631377236 576435664 677653098 278194252 340221353 233511393 99140381 938366720 975427309 636146434 167205733 474156360 885840890 974731756 67561074 598011487 850250651 349136859 617413454 665830275 618569579 965541353 798835029 320091980 883981789 485494177 137455278 334102047 695322844 516806971 572208659 380585511 420527611 228540400 210676000 538704280 835022316 482934714 275287458 533214938 354473582 979353503 24289765 506484254 869234846 798547112 663849288 838337868 826139983 360661866 278854199 80043866 490843623 105347857 1158121 989671290 882757757 426071244 845885036 737560398 77570926 802219434 740006367 873233655 349897914 105304390 272764769 211672365 68350909 826278356 377331517 629914808 216720355 293639714 770186879 647335596 204944524 267839905 693726691 397294258 925130675 509195447 996444245 107634278 538426225 442032354 831838130 598042905 534249958 136921177 759736374 253879026 106977965 390156723 615373739 587548410 50367081 323293795 487287426 421210470 248280499 224372939 125053422 16488231 38566603 407170006 768017180 589240833 534832206 819067626 988878945 525724719 728300516 146891378 117968395 499152207 105398740 408655561 946930060 378922034 555405131 7432540 869310356 567852806 230568878 752778730 550308315 414779403 338033730 112535556 205143893 118558096 693719640 918797305 617028155 419337721 361099685 686640594 959376488 565168017 189657068 383807443 508225979 964601169 158829802 437472225 274180334 906143973 513394745 420385599 584889763 342365931 52797841 896009255 774590983 18975643 463448295 732146041 225843013 832402435 289792237 955655819 672351293 76301496 917457847 760510055 346755560 585552716 269795604 100688541 108012559 916563357 483953323 205038699 896953269 161744407 678110841 805784141 802426827 640596088 317595727 115211429 252955236 180195328 136039835 439178458 268100145 368927386 445430417 247780440 132371189 910782252 972314601 223918894 929844960 892416479 111434057 689893596 129766256 743571587 393184654 492940736 534074883 174971575 458029087 57141489 470405636 957060016 558316693 599216314 768066254 868307001 609532852 130120163 254220669 387789189 472112979 422830905 70808883 858919064 472810980 921869558 592207005 839486687 779518164 617228118 708454514 872258142 92595680 941296175 519499500 626665907 515441922 480816295 313626689 961392269 904073735 930765770 113392100 183584045 633273763 820502993 882283833 893991732 212236726 268146246 580134399 302803347 159702666 844376523 514466724 335182650 556169209 171415118 794461024 103083019 325702213 855270624 797469066 831016906 934072965 856469596 654379430 395843185 150295277 923722375 283276972 739478752 222936661 585704969 988896716 228888907 671116111 56547477 167202465 610333820 645617832 65079838 541853976 217932517 17657070 694922421 440811231 840725981 276085483 605564728 493427133 610155275 593775161 615272790 147597292 399491994 154525312 237808880 216570433 708302452 232588009 564855239 389467995 76136144 105286847 206608692 83993471 339235371 399166767 393311488 833080500 778680873 582002795 208239988 73668295 344052239 287366404 857757986 772590840 734981667 175513331 897954009 414265679 854764014 687199518 751391672 151873030 472016119 873209253 218282470 244854280 458978645 576697930 230986843 773343803 733365567 22884379 685629450 625002696 867751141 518733816 28023640 748416050 712035980 905215490 367087366 213418206 336024908 510662805 733701840 500895663 412353730 765720660 500084093 934363021 164891719 830001519 703495797 366319778 761180457 672141473 755073545 323849467 862556378 2535926 713353689 809054896 570870959 74386674 824855666 534069497 788884701 512082363 263306990 560527860 753318622 822104361 978402298 868653339 365358436 126210650 573253250 942204417 847207205 523272240 39783354 722722480 77959771 439245469 937881716 855980115 836892099 306142275 725468656 218003664 123726237 616409313 703368491 552821252 704380726 370704130 193194856 8921092 409163937 953864633 724724226 251119922 379129012 582198033 925063157 631447027 412884211 432220287 60149273 447525504 32128712 404051784 201864238 212901612 380940463 47264639 761336309 460001598 872991411 344296487 809930719 388956715 353742484 334986322 800425809 296881808 312700899 331246892 492477619 722170007 762624542 126149361 621128693 277718479 858731111 301284534 288453393 810746234 650252362 17118788 464917968 154012199 524057473 408397224 877692712 796401296 846740021 930364621 138344137 75600617 756596887 382373239 268829971 724225888 215907993 188646574 931415110 642600620 690503498 662392176 449690426 508501102 78473999 244128529 817663197 679622068 483275047 643656124 419683390 411048614 974254529 463998644 901652740 329393347 349733941 406441098 125259916 912183469 467271237 808483398 35364925 972425847 687282591 925385784 842635647 270238773 998445733 430227827 697565768 841888259 802980726 968631356 275488709 521228438 982846828 947057137 324063451 983756272 274454473 620505902 298102795 146783721 616919876 965306705 253957460 927290292 397742502 82385380 683953737 370944808 342079841 624241004 563717603 160185927 389799023 880042321 779879630 640130667 471964275 142891937 4852969 978482524 837104072 298912765 295245304 269507016 155835393 710765201 542400972 836951370 147902152 424421126 827978402 876141420 731365109 731157894 534280856 17844583 293153555 584269372 833012409 271824973 789741493 227580131 344628343 797121647 637474947 546450002 806654473 842222522 132446891 151358512 52079497 131451189 50505533 952078439 724868542 645939931 670380071 894256493 943507098 175181011 572009120 68854363 971819793 298244953 131986312 74397173 951506770 132512154 287550870 772673917 113841280 751082162 497560715 111534538 433904870 166211577 703745518 339668244 470048230 424259737 528927767 646612343 821331240 125950181 191804757 493163242 565298979 805620730 642747479 615415798 384860739 861175686 381805475 716927250 306547459 758093066 215230283 432441183 579665979 811737456 910369681 341876426 514855216 847605654 338489041 540894146 160295943 909647930 271731757 5978619 381569680 487839188 827971857 105907093 440801454 649147986 46859202 284438584 284548414 330496748 968308124 93915708 441903065 609378925 404745752 463885141 417323856 184054697 509697251 325844145 502343165 27916303 843224210 467210924 948281702 198894354 610558254 750809918 683283769 151653051 116713177 840203653 775414346 483334902 119924700 274417788 778066438 516079643 963975004 905938998 637665825 651913655 975687772 350086837 64724341 766684882 690241816 934184713 263541744 648190793 52640720 29162131 891326643 818247836 192857194 916102139 49952207 273519346 360781165 188954927 651275862 80266874 245579368 770913787 795609517 223083986 940626954 704144123 540143344 528106932 517632269 189830740 760743599 398474499 457615515 506651605 119520030 710663690 686462118 177810779 73308259 852191007 91552324 363164355 496878061 231797433 485532180 615572194 322687424 657557274 633511403 586618045 669649814 545287478 571479402 173567805 786908808 35868276 583464414 715429113 735613430 659182386 303851005 606484837 983074411 126921447 218880042 573993117 49591957 426034861 670803535 237361152 35934070 123570269 771084440 593223725 234731438 53207761 288673200 634226929 922772258 255668118 538470839 352066779 560550666 853056457 648015142 86462904 361347189 660417265 885070685 749457419 518120739 203471136 522943731 360881047 307397713 345191198 912217360 941894917 480891647 704739595 793572092 256122455 238597546 763696636 449628884 559671953 781655014 341883348 58458882 721077151 465023485 238508060 276552843 154893545 473393990 960255345 882459779 297961754 200791118 651045510 945235846 15409522 833787890 72127331 454606647 797681066 163546901 112335716 900584307 127015015 665040809 786557748 161676272 966279623 190002776 761942803 385793252 916144266 127558220 133901389 385571442 430607404 676963031 121626815 392619184 285426800 941612946 47452813 976963070 621423617 339522066 735488085 523806168 204239409 507813561 323147868 207632968 286218040 123086950 219053165 519630820 524503103 948116762 834174720 129838142 883665073 595987661 407863615 770059843 285066758 6266867 938494435 148379885 544557857 411045381 729320447 487310606 469767222 397264578 17444502 728327806 730415359 400522275 672308199 471402486 222132946 255615140 253150806 906895454 511790647 498954043 656825112 542349785 60115891 95513785 552359231 619021915 10989369 102651516 883229849 586388094 732096388 612716932 308283003 614730876 247152688 468582251 543974457 115085340 323145833 117491765 638707610 255530904 566905006 538106789 588462870 620607647 883394185 351752609 948443235 261369915 287812403 249905018 783950721 155115152 308885757 395030050 768950610 32230470 729370761 616374872 55299665 97956525 689906081 3493265 413463083 579546967 421240723 269058238 216989967 556550009 315022110 838545002 976306317 395634611 702289035 270572858 152790335 856906367 364542590 997236654 984719243 90264172 143046083 159208095 917482368 759664039 511548208 934000617 888252920 270992908 217947304 116788747 685612521 536111055 621866777 731008351 277750769 560613632 854078339 83449595 806377031 257542400 388891047 246416266 341175291 884624462 135147257 734111121 469997448 771310155 395557691 621257288 777201722 277629743 293668893 814092087 25505317 679599804 954075853 494157852 620777955 35989820 632252296 700446144 49249870 895290866 671429281 623283688 8641253 925224349 335534423 264751139 231546391 763010257 28272857 565765253 257601671 572647172 212925021 718659194 723339768 376565488 545967453 675871235 463406300 441791527 347771416 229590342 69950485 197653985 202838139 618232295 689702632 548839996 800203699 738551778 923539193 479707418 935551308 592918439 268537781 866752798 86959 513448853 246665696 558897020 919281305 903829112 720853800 909281650 601517679 241128720 815786695 214106763 68867261 730222554 788302909 63489080 918133337 981734828 947055414 696947796 808510245 164013453 84770894 946299767 442975805 16940676 636809366 563366069 300824804 563394500 454537892 443622233 805764749 442145550 845903863 849196976 845237969 797823939 701253940 20198270 648725934 407794100 407738905 599258080 344420459 871429339 935232386 466134206 362819933 992014736 313117430 413398344 443992428 495190666 923248099 387743674 976405113 260522667 723704337 708117806 412153085 510937633 371005022 812925922 846812262 539967745 652290782 51524831 67695284 287359061 88499937 189500322 639665873 41023342 769257858 973957840 106003654 190621464 908763983 957906784 824333846 214490137 950046494 248537006 241946313 300640639 139937501 509608542 827430198 208716613 638606651 222961403 590947312 291536329 49192523 187911419 580034894 839573627 818639817 746122311 221919265 183843154 95905392 148522177 87318070 337611461 188110426 269730404 649450101 183979847 858277978 291280475 853834427 889154727 667016039 317022569 13281479 64673232 700549340 186522058 472245174 974684643 650357584 381943243 930211873 292332555 996898724 641849130 172031502 874202775 769071366 49433162 242030060 227633930 120539168 724645265 370230816 350054534 131806737 269357318 949460130 225537506 29925931 409415676 598030975 467445016 619522929 999115644 344284221 174087633 352779683 105592609 903691788 820514426 667200862 795438785 481407773 860395451 370569982 431373725 768385252 322309449 619755382 604221529 617805255 310010294 72932254 596158465 769710567 601560059 459132879 501331180 993018656 213041306 734700531 149817750 960585235 431587184 297722767 11414345 934802579 950433497 738106338 228579158 850027762 130192465 690027754 887881922 607166578 569612332 193250036 515768830 801258310 790822897 437523418 595351568 303947287 305034829 756229599 686689430 296053451 174172045 400081146 979290957 91254751 911126671 808006570 494952926 462833876 912968321 653387252 686755256 555408923 996632217 457924808 16323272 604101820 763191160 624211812 585542303 421942220 77635510 690346338 813324380 466796185 63660715 499655307 908239490 894291372 893100061 668732540 679597480 25669249 200159192 121616222 460619969 440504793 798097228 158477181 383816604 947954733 483157761 659363952 282385722 490124331 615278660 830706249 269650836 112810085 63034198 579879093 891374665 81772556 145833369 116752901 690147524 108330365 228119796 396863938 134255717 849715049 349579614 151664741 714735762 538120840 63468381 217074929 420511838 624682615 319597515 76721038 417579855 298567226 214820060 250565186 937929128 509929016 803467575 511730780 84127179 416580168 233881187 965198624 779706586 488585999 574866856 810784818 801724643 31176551 873024469 28346157 919500963 836898915 464877661 404732688 380223725 515993188 895221109 219355765 663033778 214867007 882569878 707331093 842874831 747515510 578574788 370081068 657204649 497149872 766055065 691493250 58789510 405878184 58416492 565951327 445755412 36849642 54672405 21005621 361731755 130044301 585552049 765332746 376220306 509328904 218571641 512519793 468825966 73433149 567342003 543135695 2375591 167664059 500083690 485316588 106441071 377544842 794930492 32366282 141335363 672637248 744170479 808905882 926591296 975860987 493657992 627358701 489029800 453737755 742692841 932781201 951643607 171137666 411448573 855146426 179175673 78700128 22723802 794167792 997619628 224275661 411584128 519073368 32215210 910403819 673971047 876648943 17515888 880430052 250664248 197533577 112448551 980021945 809540890 826884577 520745752 547723543 89936851 628026366 832470148 877227709 465289264 694602686 63149560 876336385 899040418 493848109 365740953 564660649 574505686 394140608 454823212 205295488 475694713 868199910 780688100 72940697 139571539 172340573 346611461 89173346 910886341 38141583 258532664 868981389 825170749 353803219 375328751 505613208 97822779 166275853 908183443 9537233 333752127 25366662 901427747 389018651 396305207 15170886 138373481 26039643 635037714 861013762 308342864 620084897 884931522 623042613 260518556 605454745 410293813 556087271 301985136 72378148 32113147 428816338 837599513 21625260 470299276 321853357 914328994 388199585 834094617 439527536 213668647 988856412 328569080 895392233 248425860 248311247 737512953 381689363 71016182 80753095 578647180 856498215 14938309 956551995 695284880 839404517 839031742 410698929 539825041 629309660 176533843 285108680 892288293 791989168 132427527 506135170 486044975 497500492 67446294 653970656 153398071 872724573 37069092 102293489 486258871 675829637 207171671 832457880 438999537 44759897 589417504 487255926 997130406 544283777 55261878 734714727 970244913 64549233 855841240 304132340 693657464 974673493 282925204 233298844 243068927 876914491 785331055 385649408 835096007 479244288 957545006 892163238 123140828 815530367 429748946 188862509 929005622 630798967 938076498 744493462 108535199 581284348 202930110 189250598 390621144 448411402 596576441 233039147 675293080 748608367 651730094 258840049 443823923 846302843 952725524 883664705 655833954 908576657 888156640 270934639 282787106 543481818 892778887 831158556 730371115 79576337 873526204 882228929 251590245 777099322 523100535 733261800 991045656 551523691 210323626 653297380 755263126 412579958 710690099 200956568 705611280 662612727 286077153 931760220 79950961 489970460 399915090 663052673 67158151 493118516 522172560 910292344 662105168 133375347 516890267 844027733 370350148 665413443 64859587 414532748 736648406 128325698 856211122 4547081 424480772 96379748 763545283 383224101 381362875 667402100 510940088 911309071 595485268 16860394 124928440 161885494 528340139 655099783 454866152 829843562 41704616 25756062 855417024 647205925 556771860 940722245 638686629 83949759 46828647 319006980 484964185 426963865 625239205 890198739 861027445 378048148 173405922 642858112 403946259 200586370 46777668 399280016 88904921 824781418 281738103 728263979 586247165 221205086 351556136 710797202 923331137 525099994 238287483 332452326 871180310 986773436 993373828 332427836 171677755 438866113 985196355 862467409 57269676 50490952 998815906 28427561 886068917 27294634 631504565 625088161 258258757 802262144 347429233 46586383 849680722 18567595 819465360 541239973 197633765 510337889 713138133 216204830 452297062 395340666 466881678 839284446 277577221 413720651 158267405 363045137 188331770 729823815 263518842 370451539 673857233 524894370 706946204 288220060 758389892 185110076 614234978 716307396 702292413 923556549 168327136 337780453 865843206 535519700 396032288 995961414 317928063 997600597 202852343 594163849 251169756 976424373 253063512 519271710 742445645 311163948 107270281 194877727 450886105 476539195 363151319 549639125 573309459 516572634 810470044 102786071 686798949 773696512 78269519 149911714 526852789 483516040 71771791 959751834 142168847 612926329 259986885 939220246 948991670 427715013 627695897 496148059 562669181 366039295 281232093 493298556 138529913 215063633 864565628 473279566 667234984 714881496 155380693 842314765 123198442 606354838 773463109 695314503 642592564 758650598 867514418 814029018 700347989 556049882 17224180 571815296 588186327 48994398 19262268 685483385 377120004 154227961 421191527 482856332 82201750 477572209 9981203 566185246 534515641 120188698 754656835 239882037 350121164 272970903 408258706 876842746 562081545 240565844 41086720 638388912 967479222 237917424 988760963 471847140 66854605 238124431 664141049 592757311 789547760 798700197 950252793 487512074 387538867 916899032 877269391 283341478 633314224 782417417 6640083 319430389 474447040 77689340 152579027 654948822 717899144 746644213 697323712 3463871 852228783 533711815 973040539 74412506 390360252 98568187 449462615 852413444 467961530 961310299 662846485 354912044 913766350 727794836 492080383 577212849 386542300 758000459 591108603 23512367 908761623 766526633 849272633 487689108 670627037 619797097 940585156 489075332 545159595 727506323 697583613 390445569 622376905 311399139 374085253 621749697 40563266 893874780 373472403 41479815 607909536 141141365 662336916 514171271 919851909 803106523 291545736 775468189 492398307 593816839 541721961 364923534 325713617 875295879 946278469 305536298 781470332 564266434 224766489 129184605 868057984 683209849 158848707 51256667 552175120 442764527 300451846 967022058 827965842 298545971 243860564 143153925 447038498 793830783 170961911 81035530 537194097 691671747 552948664 99706589 655650951 625470471 213781028 148915256 211379730 460846027 708582610 534432248 536474200 982069475 443422227 586187523 875745984 25351427 845081173 228997223 463407566 476798078 238793097 429716456 281749102 292226622 9903687 511737728 329665216 554337712 581771493 394714225 711945243 646473423 744183147 438076346 968348815 599622771 48146141 895917067 295412908 429495806 854603349 975933088 266574962 489116858 502578798 376513239 234150533 334346714 436133776 217897485 409350392 480263293 72835929 599545430 771290366 561657079 878058686 907887256 162906821 736572982 571349206 734329139 927815073 879576673 361985537 609207108 319294197 109502212 821191436 976306476 319154831 118111453 741088762 489760048 488245714 960875439 948237801 664854261 789073556 917327081 6311092 165238974 232525203 650678851 844476852 200324211 319797980 308798172 699951446 544617773 923871212 344996042 209478193 539887690 28264568 50874793 446640836 37075088 258489118 802664649 459675365 988667124 286344144 540428429 185237113 593541782 380408892 749928607 952045015 81762150 810545166 210395637 760648224 410564238 812286304 998381945 78634070 223584277 819315142 143839101 466464106 214653535 209726432 451582784 611905957 733998495 194292191 120463785 500685408 997425293 152274606 626395131 720990307 148487729 391842669 775121576 413549245 769869117 798504354 354920228 890026242 535768389 663983565 430904094 96223917 429610983 210364520 583322186 306357071 541068113 426499717 681472877 356431219 955121080 600676422 784518440 890807648 451548812 922788335 222428131 359297457 668429229 199453265 464125160 968762216 549936612 192995047 458811431 88355035 594817726 593081481 145202015 503878026 759187414 837490720 251865929 680667724 518254741 831906146 932278986 299605073 545085550 978492983 634913890 260399576 677859522 198945485 489984891 769296220 67409627 624601239 639059005 77364000 617771406 688884715 273439680 663960310 571847511 711513135 710143084 672185717 875140406 200807805 577629717 958886480 220411610 383056066 413138333 901162810 193730642 279333627 235807284 811999292 357094458 686884829 736799983 244657892 931704301 403434802 660320678 844502826 564049305 803898781 805215428 705096474 252739932 77919374 175715745 987625297 111628806 812536179 856429104 872757100 755826615 291301889 422520455 146862555 778526658 81307982 961631791 738170704 993101306 144247089 986690405 909558155 849574244 501764155 1800859 631167137 829329934 629555615 945052410 494924724 501003786 580606565 374540013 735469628 139221673 784223180 104603103 471156509 455439590 672254239 617156021 21650336 238561539 869325067 273240423 302389480 72216741 353387019 588067841 948939019 785884045 589466362 780986674 488526957 271962056 58402686 891796414 649611899 291430263 780839632 414132585 477887645 557075922 948889456 903911584 94977802 524820489 649197845 370938902 540156995 262784158 143054711 701288240 955516432 197234597 369177575 11785635 976375900 397683142 279883429 291947488 277149290 63868942 706597156 831993400 674881408 987516928 797695262 238254234 549825861 646268606 415266234 7629323 156121421 254001229 73783062 323765945 734333560 597255420 955296497 625638257 975592871 659678878 127549191 869385048 972498035 420031911 701081963 740515144 945153541 113201627 157808222 992687840 134146060 181385462 196833303 572837160 934692244 459291400 121505854 731301421 687309244 597266903 524458609 585768375 658696963 101566846 877727698 228233097 428594273 923800524 33708963 468913235 324916688 347048186 370601577 302262788 646147618 399630953 433531942 921489964 41833648 928007369 370587794 662127838 780032360 54922617 711387491 271192773 860336751 92525289 595680423 25247392 531614144 938159180 563705008 30963456 576943847 475520023 882587314 542737087 241805697 613851139 524901640 500879423 723340778 149699567 934455965 684693301 82304700 691015803 186653823 351792805 524375355 235727582 692784784 10264917 128558340 798036083 42953146 243457274 860804588 529472175 561131156 207903326 675915393 88270369 820300897 615701235 199553598 27936345 451744617 246214643 258676332 384607349 510346952 963784729 105898783 698912457 205512280 531688050 923446213 174147070 999909163 149757223 157403143 735997957 182495681 668722064 677356550 44139024 884515308 907205011 614027149 83490545 386389969 238153668 585646405 452545869 951851860 602842659 408798337 265902371 759913513 395176682 271307235 627122282 909833635 715148465 851755371 265113653 487499822 363359303 462912092 486851737 380268599 748134541 512787235 555810192 267723863 772287196 956774055 108993955 886812579 970955497 350700466 513106921 42986824 672190547 205188745 241034012 27954742 335029379 999012893 446529239 774240307 486410785 602517135 372559235 24201797 574631483 870428355 258547268 741335500 142504980 980427592 177876154 967896485 696660554 335279752 573285459 450217057 934300572 94489766 659581913 873619511 30950569 869274875 92398023 771703566 325468232 46021556 902612152 545805516 386720914 572934711 815384778 533963929 170449706 574739101 628764159 559084040 394684781 775923846 113685132 291364414 107590859 778574241 726850578 761705911 622946876 308565080 89121970 378898403 535375513 663967410 239010005 597443428 258880464 278884510 858897894 681861164 675934308 236526741 205802326 954171372 579819997 72844777 348948393 161841427 447484274 939872280 843276071 787374738 985624628 827287928 245646479 646704788 180865561 412144335 97967447 629636851 633615065 84345646 845138901 871506806 431856423 380398653 881354192 635662326 840158946 220893920 807846583 921433024 58992982 131311585 665413558 953473196 925077456 658207577 435529871 833723922 269120479 539773253 525458842 963034795 422283295 400991684 365659938 154540741 373229443 640791944 231600661 914091304 731598995 546253983 302845576 108911028 532735258 396165799 724116361 834430814 565771637 829159567 120886076 200079709 275759025 377474375 539413938 538984108 9637001 386529899 977866841 620657863 342935400 719994371 157518354 401258593 364974806 770460424 182862648 996095427 619892944 762498743 351146687 761971288 281667550 379692968 339901507 153771734 423208081 789836924 164158330 874250535 942740257 518444918 948939075 708343573 173488232 216211065 917730832 449216688 413814584 105443625 240384760 428773492 519563343 177911902 245005471 357342981 419367475 2674111 850829920 21626313 318039662 127680912 750866559 510685678 684880020 598350085 373503004 727243690 311308537 153057034 371350325 722338259 404341460 202922886 145026743 475004667 353142272 355489884 725202347 224167868 242919825 698609791 296248356 323426878 341276029 118558639 4562169 182562425 9877625 705465805 331985195 632900248 883872339 726352547 581418721 357877884 915881235 545824132 154935473 39671225 32304869 919057518 777616700 878948956 942258200 638317090 232980161 793628579 822200193 316722575 154120719 178463966 73402719 251116785 160249741 844268716 983597070 540949537 722456253 311308191 129223944 828070831 908274789 11311677 192354089 716016954 301043223 663618202 462396532 347643629 200474709 199544902 191417700 762104819 981797306 696830710 575353118 694685679 906937017 923115985 420981996 94673542 326907272 812415320 124706843 704908943 290934433 12840736 996056670 7211111 21875365 934027290 432999889 463361763 352510202 973969349 360715037 728761156 135993548 939627465 461369106 310512698 664467834 69618784 645057856 191322100 718766289 777672259 675259711 369108087 389935141 79709799 557400107 203030821 537689219 621029036 50729667 749888413 90401658 307495468 515651586 875780437 354442780 618587476 158323191 289196526 846481448 855290492 220319539 333517235 33287419 699808516 459581173 45039869 124280560 666804777 531029861 567533363 714353743 323845689 273144371 583144753 321351995 141160861 235545189 702404954 387984726 182453798 609977449 632648327 232282733 182338928 278874798 893012848 308010984 643695720 934436447 92611388 325038812 840376376 907572409 419012534 812766419 364272229 406498429 589672708 899347851 300907936 151926762 127518444 834630567 182726346 182560970 567002109 394754046 405024440 336173851 551757199 724366345 42486537 998094766 913122632 65552383 153440715 702830 901800893 730739047 609475703 169861795 318098109 360936325 653357055 345855750 754261327 732367783 908564203 296010542 712859606 406430564 867005433 604043339 824985838 612516690 399517680 788515425 256153684 591637162 826405431 524958073 834006670 887595167 317940556 523947626 65104802 168083456 516000541 40395797 630701202 595746270 784061491 117317748 442824481 955086708 618001500 651925747 348777466 811290458 826282608 451481389 15407008 996851502 782076674 310459710 455332023 232731517 34236437 417561493 216946373 545545146 727139467 705952917 690372153 512457384 933335152 218493375 580992364 749086110 217033935 809580769 569469842 131709693 367793666 295333852 472335899 610752663 33255933 528514124 326971130 902816907 705039473 888076979 203101511 274520544 119921305 153499893 268824196 933393182 895253740 772010798 134702659 449684216 932386114 745287994 462505839 270021295 245587621 680452180 668541371 222138543 193284343 667329914 528972831 410189798 12628774 8675556 270175608 91178496 176463802 369407933 728636841 922864663 72525252 715732663 599190514 856565558 508616289 405032396 6731873 118851910 738274538 470726535 120419564 628861576 790696482 414307339 536083502 70816893 923268594 444919733 919871896 582513391 340904604 35582150 38371794 319414556 410194181 326611161 684954238 972092528 637479249 468074861 979107587 851456969 347619496 624297174 587850784 418170258 391137723 572023798 624751909 613064475 533122905 976753101 351052617 255824171 564065604 486518717 803547742 166719147 388322562 999635004 640917589 802588831 705323731 55247752 89416897 113868950 831014941 307033077 174547342 92996367 619522197 606342638 645312525 447398981 596426031 555694499 913613291 821021638 374291715 415577355 510213973 737433866 283696863 653140103 218266633 484572517 220833616 972879133 274646053 425169577 307615774 577075793 322342774 860247713 735374973 578546680 901120208 172264088 129459685 853276378 569585899 267263280 461080923 352679896 426678319 111988492 735287505 556179504 990675556 986147917 773368931 56187025 468077657 828460032 631752821 957614479 141098084 395311726 186623562 325011196 50609845 437858704 492820405 84220944 238309471 141313800 292096965 654421652 784775479 455634068 574275806 328360315 252581533 897841129 859019309 956333717 438416725 282816972 70522843 183478390 841934918 237963968 589446659 996156819 363802352 624472223 984565690 278048731 178756046 566054456 148522357 553653411 234111392 904209792 764498111 658146008 609218533 808833105 163697072 538638351 35772242 523008001 149649155 702834806 765990049 5998628 310654217 30600872 501146176 331409644 688309 231313169 908675375 702030960 484558327 604482440 957653736 708237077 504888843 261013208 196292211 653686376 908571238 862019033 307687230 248141681 37264963 32994669 415155924 194786209 156505943 456570751 122652463 160182090 778235683 579439896 886782568 616520698 793391579 253491838 529562458 179453247 441610343 952745424 46679726 374269787 97774883 425930321 128543356 364070777 810352886 229716641 751632296 611758593 316161277 478554567 656885921 954715613 50040751 782437746 344618058 410173428 959413036 890060569 480337312 447588142 250504595 191101630 224484713 121504964 8123467 380001602 620253046 166595856 421137472 916228657 336150673 36382315 360880888 565673353 945145520 121812631 230612522 958051176 255318194 686877555 205959332 500203169 99195019 102040679 873010593 691480779 251887651 165901274 315576011 208591403 209703917 747816470 290655938 11363211 661548920 418916388 154695906 136693072 616662090 969868734 709017255 980276104 630865880 827252218 968426564 195196497 411598923 823252440 192151448 121864089 169668533 345858154 559210985 907238481 491427932 461131993 535285763 408410969 5470996 861061221 567058650 111160787 555013464 628156389 101184569 999045878 447915212 104092287 921465927 320339968 571333433 559607211 759424068 850763984 917896075 861965996 306271584 885981784 770554668 360887856 156091243 338323888 500790517 252683401 966126606 545933414 988778677 460506414 251528297 463575772 910296090 817017275 754980919 178076693 841505301 647978203 437509993 139862573 935063052 353482152 872348771 46068562 374522288 985213812 474215234 500666066 957697666 955631541 907739558 406614143 483674184 277139676 41532282 402173954 509547782 942138916 737411500 900232717 103598614 763888834 291836637 403755538 583357032 687012762 378220799 130388860 189212776 389835823 448708210 391822993 17444148 927459355 31030018 268011386 776423738 41230737 390212022 640414933 642417051 780982780 381570067 103356625 781747372 628532765 391980845 993716574 601148285 489518659 711106096 203855838 503700892 786865418 705236037 815765551 25142470 818440108 80820946 751549930 154606002 445677384 957847151 725885483 427921942 352936813 450508789 351295874 627320470 240643156 751757457 483880520 500344290 311823527 548028005 306838730 2090297 871436128 226340975 775569259 68383287 875954785 335655697 321090147 465137538 715592672 802053615 261820273 904470806 894772352 373936771 370019934 344820696 729016084 901344536 814371841 963880020 418370991 697676341 50795893 709567410 248038364 95930176 478036295 916657761 440479783 684487706 93689232 750557669 899385385 322453863 533251205 379386172 648062269 275997417 455996952 880988150 183004582 374870556 365620488 29469742 982731719 611845046 401473283 573759152 894714255 79684359 939148399 921836991 935113941 391248769 36213330 831939162 542840067 76347712 242041104 477755600 741965545 245007430 462379906 945934203 546625044 739775393 471556836 209669261 175901539 243894935 359361089 638174290 883588253 760241490 313348930 769155889 804990125 164216394 453299825 266123113 722605634 401202167 257952617 55613837 842921251 662765354 753723190 861093059 344125778 881105901 667698364 455768359 471442559 53262669 770263184 257315390 885403102 233705040 362394044 742093630 759180299 332079789 81994049 614074678 328192148 309121591 947408999 443786017 169181665 181035719 912451282 396343572 375964191 7537250 106181636 291540579 431469397 624468969 467783678 982073646 416707031 281882288 428800682 763848683 119163906 432523223 357500036 897922599 531627145 136393928 158815300 784856310 256711048 767041729 730744991 860184393 628289741 981126541 643116231 671252487 677346698 552078865 377710816 294328159 720356268 152121101 96739904 486697056 312775378 882144906 527135946 885553289 411465921 925904656 875093655 129915666 415219108 917218830 264248315 851566882 719581689 750874781 102276676 971621963 787501752 51530457 671868369 680078664 186926232 704929592 735132155 759489922 2363434 960161194 632174958 672032397 458613325 441406210 575257002 622910545 86125675 621436227 690241450 603490749 561704764 317815867 96192682 899797562 640792455 802713756 201718585 498997717 408878525 59175122 753932261 470361213 188709809 995684947 314641271 717992518 764800759 417753406 668410788 374699335 474961246 239685074 522803602 72425572 379599951 718187126 91025406 645532186 420493999 220972875 335232599 13814949 513275741 138938967 630223982 222155688 688342892 987635132 963665555 577117975 140708983 384871707 772084440 18999143 886220290 824552926 529565994 205328889 496489719 230579756 89279913 575602148 39370584 648986479 20576281 863659514 963383818 683644808 694207591 640855714 712345381 541331632 790692601 32509127 276541144 486042057 347706600 11903732 10627128 86145983 389011447 798511518 636761958 20117048 542392811 761796036 654379994 658594269 98001740 804996133 350624056 390109461 717430018 802870497 252925889 858175056 567405325 877336087 273992473 408000562 489585019 149609719 184386900 671346200 657427987 443906427 129801325 286803796 749911251 375409682 636675051 210215425 968675681 955566359 917877538 223250463 265401357 719109043 852979470 429059462 343063063 2296217 293902480 987831645 573193869 479379876 315082517 808414459 945559271 119933489 984952233 828880614 779564131 484641338 751610289 31841868 986864311 721718017 722918042 894173246 449061778 982196527 823798713 306022746 247449638 661687880 427522353 574001650 385610381 938721570 643288412 102989827 367920099 77646818 690005995 309883916 771444126 719794886 229413372 734642381 472507389 415340702 836023676 477496853 965119105 64594327 566623011 130127052 299922054 632499424 814028184 188059249 500995789 768806869 66013873 726258383 203080003 219418091 475738368 198522810 312986320 842927022 233441358 462983392 54026958 74899691 60764425 122232253 500753434 221661529 53175628 755437432 480568298 318862476 86768049 743158942 534993858 620882188 72109358 150906407 494113464 326481207 431772129 248833336 396933141 78654573 878997213 549589469 968258790 178145263 483219874 537322171 482720498 128045586 451161474 778703953 799350104 353647062 939222483 490706736 929267908 335787459 714800435 987205154 891531071 562119924 484971382 725690341 793118641 130741280 487352580 310289746 104460205 626089062 845050743 409800409 814133260 710739576 15627390 709912789 784268906 46710790 746263407 666075216 436514067 940658391 939564639 289705993 817558874 654533306 332923585 790204015 149887615 992580528 952540586 942213832 181257626 28196608 771308751 712584135 410893426 454017573 532364010 724177710 110084602 62831564 4343213 88272101 884812684 729650532 616881344 627446052 778021264 755644447 237415220 344631115 831656026 338185173 145454890 973059607 199298616 573868239 8905204 529728736 582763853 302377430 703854455 803733152 972769725 958646372 411491426 900531468 101857960 458990837 294336581 441879346 723366267 554773801 727440780 554424194 997154040 942379452 532705797 413253090 755429299 297079959 799630856 969796800 237084973 574488841 405232778 971215584 358439684 926422462 73891768 32556334 859278005 160084619 717482972 537002932 709619788 211740594 958681866 895971533 412467342 944507846 88063854 606592866 501201608 525348769 696646277 461547583 19093138 534932752 924949487 493887886 240838597 751315980 620589243 30228433 874912039 461129983 766418386 939435626 157911363 43251369 594258636 471911616 148237086 949768855 380352196 538511792 78844622 449559318 576108964 123809725 864171638 185034414 862958531 203945069 88547609 315094240 424893151 67212194 339194409 710290173 267739855 443141176 703743036 250147593 210675397 315480340 874640867 398164703 803834973 217816479 765883253 680092921 168076362 62695815 634444244 134536990 97619214 632535503 247761882 217954191 473295654 803291393 945580842 409568860 144464200 100905664 809552706 102924242 120269142 414761529 270491088 666284625 31731629 332870021 584905996 18714274 336538193 34738025 863482157 610448072 302701547 380041082 776725990 335252916 804956820 263966164 781261960 747880553 855338980 382361927 677195134 792782154 52140817 634927168 999098427 584883312 728711450 96795956 461531296 526178828 820291909 328920948 515464491 133756531 572101041 478324070 477484871 705312903 587811769 841648987 110402832 710850391 283354490 663347186 689078829 898387831 90291825 614611600 426379236 546039088 918586622 796857280 671011481 569407323 467317554 956547301 252256033 604074508 483943268 363424053 102735161 875138448 903110368 729746775 577149780 210621984 923802253 675967987 877710109 367103596 423123611 467556363 725558795 706787893 903843264 320251530 226915442 402436749 565632910 272598264 956279040 47012451 442938628 901767205 451781660 126105078 896147939 680027935 887806592 790411569 624808245 221439607 742467186 902813573 391776023 559133354 800485916 217953081 584850065 581827461 82843002 538208995 514702460 944874702 479729524 702663472 385525006 534394235 423978877 336368145 702460671 352675661 448690325 35220622 300178121 798001695 615683099 904514535 537281312 506198330 367236069 370329102 618034867 991497616 864688926 873948884 431412874 424253632 21813824 988186228 66682131 720054273 459078453 847374412 428477562 819839712 268993181 149205112 752156897 282420909 226108591 636316626 606644248 61382332 791495774 176350250 516593772 923691927 890304297 89146230 964280671 195733106 787762948 756075038 328883713 519792724 851922322 860360587 814134510 777074773 774720699 165212160 486908659 255995792 235799220 881260242 808564355 370145293 852306287 490844552 283460325 678826719 571556139 474657985 751430480 996686448 507664538 903064754 276011621 298847940 851411728 624258984 491608911 705011669 258280374 710274515 367317707 707103240 16893600 487745288 600198489 703040715 74165682 851180766 646194254 68490223 966493512 211338636 375609703 793120732 238163074 601362076 464548630 538541986 619143971 605004316 845328853 260963513 123908885 190911477 239541101 414953744 877754701 101852053 964729980 674686551 793491546 723096869 930417737 868090077 448610381 931529162 51783434 576828198 49140769 182784133 132672554 12468475 416102922 338391972 220197363 36322775 716018813 715040501 704697800 252829526 756017678 134431346 205891907 915900037 427488188 42401133 699926945 930571372 222252015 826530084 497351210 161470126 589815263 770061115 495599399 899398017 649485027 6588844 708974212 589927838 750218738 308612329 934082415 69175301 968218332 352237423 889067547 924890426 456407277 846506345 348276264 271028382 203145828 717011802 749420428 108830860 635598320 153238801 523429429 772778625 742872717 40895159 952523427 516721424 658420588 304983588 685035746 203926270 923793530 96529192 264150940 317128570 696443346 434043977 880801674 205557967 134341785 897076230 566454298 852509021 549720195 761107961 159688827 289948777 740323276 598701845 579196353 861060162 365411563 259987165 310790925 639443490 662774299 436910500 36919033 798240797 325734640 554889459 516337716 908064923 981687928 254182710 383901564 626013319 919930566 161091602 437453024 980430619 51208746 733844907 97118943 992434460 267404501 788570362 473970860 133564955 518299774 932016754 230435635 507454679 295311391 843206333 716344779 939200491 26005418 448251857 943756454 439248558 104244392 854578002 196764909 174144005 266210152 25775494 37870886 461397447 63780645 378448629 211275351 401321767 261244607 590040953 485545212 525451831 818984485 747567775 156679900 287967141 108348055 526994782 44876173 640656847 656992698 30404572 1349590 701996873 130344730 170118400 938740083 738441416 122549711 360505658 521285838 957541633 845055907 982269360 812486036 541188355 888345311 621726303 243333449 39804419 278167274 865768869 385546575 116658739 42587314 22679336 26075307 154223120 576119734 955408426 411380723 383596099 554921700 260706391 541858247 295444648 866316604 828250597 627963789 649676987 941469985 771145659 10611379 328154428 345534661 944356306 79910498 767605218 892772186 204629317 689734232 759805894 470589051 925022747 361184995 347563272 389125914 182073931 312000019 200550997 216023648 291277237 275503220 760586609 378814642 745027255 563668854 625814873 38000798 942428858 752857444 317915345 525892071 646893434 592300732 768057605 900445487 125925895 592501773 374027383 399492552 480008317 683146985 491057955 957599776 981618538 549307816 355976728 939600834 751500077 874321826 879590230 184258703 144692789 745370106 374381819 2367563 433844029 663077322 532130652 783210659 538685507 150596252 708583672 343016812 329384213 500705766 666833019 206156167 960969242 377476044 317177387 303948964 174234605 462776346 250290202 531922666 821628455 172298192 243133980 286211877 963789002 361507763 849871741 208712264 747987296 24154178 514993305 464557729 28807715 933821821 110585188 649638296 180721878 806919770 782823920 954600598 695253263 645979671 141963659 875841232 670146728 147785085 406930140 330619908 8906957 373615592 523508691 452154373 927861694 228734513 866178066 107649203 929393949 473067713 41315192 3056619 258434623 277656319 358293224 222691857 76075419 841234475 733050935 193461605 531688645 732537114 124530413 617937964 915232123 969289860 666642905 573836277 352074352 886859298 325258497 899009425 294298042 648382024 89416787 330041156 949816728 840628170 429711922 847630879 531415877 626106115 18979291 855403260 365355765 459554801 261405220 449869802 561126422 185946742 649907121 446809591 109659836 370125848 867799851 838604001 201962119 4385451 48930639 856236977 724814443 728895231 682901005 114079834 628202591 908176371 432796331 508188285 932568721 892124419 742396822 243825377 300353866 400817120 597695095 284982452 214476057 913469968 833972248 164857605 596090138 250828262 123281847 789167292 711395707 414186395 539478028 230781068 614278188 288098205 918955705 791549515 30176664 104806393 402495622 871169850 471668513 977951764 931060765 922040653 455091972 611065053 696488678 735616403 889695348 405303177 825437629 89051630 947826836 59588768 133275751 826731873 804681348 667113916 346224253 129506838 96735362 401135467 627125835 265198046 591353657 610599016 949229299 83193493 110476979 902461288 221164444 683834652 143244976 690102938 641873413 424050736 495900150 480956907 813475974 34753820 456429941 743046450 667634152 932713407 1544194 716845559 214749622 388884128 637307555 201737907 586833893 704597237 369700999 703035018 131978134 13075401 769924287 144523381 277455763 136341947 316538799 768037898 801640815 736275949 976595289 786938570 100119163 22745227 142192237 994616040 135750692 55087761 413728875 755165544 586450979 206037551 699250642 873367246 406536791 657773765 321603030 642412549 305665370 105875801 855317024 696195561 131963117 638720342 280275322 185584336 301593562 481717228 239043711 684115761 196211149 734741803 172209158 42820567 642382065 869223640 453827962 273744958 666578502 508993016 568413746 121833697 788834002 834140004 374072138 830654242 311816926 776704989 845456038 66528381 525485530 307918732 752544106 405087458 816103463 227667623 51090772 142877497 390632815 188966359 618025387 764097718 61475984 621155797 841188765 440274243 948333003 781860098 214593871 309255528 465425557 93511643 71756315 488217095 872016979 168985899 327597309 949689410 448977590 428364065 756938434 297343689 627629051 569815184 571861777 448041437 95135125 509270855 174346721 588460201 140583792 11000772 295912723 244184150 919461875 457716190 653129161 428102086 194107362 737019560 79516722 844156592 216489804 718334737 843085455 853367587 901622244 123425909 876481711 766944713 603483585 457527019 58019382 326845184 432389821 460985197 639541952 390375052 179538187 300927595 329771925 925486581 177444001 39882944 314722654 856136449 933930071 507577105 90423644 586642149 121795085 217755956 31900012 177704946 678376523 492014948 742622618 153235226 441389303 685892497 374202646 577661355 586280785 769795581 119721992 995724312 848517786 626360368 530700766 426045004 808384674 224299394 854235970 796364806 310090500 756035542 772697639 646474457 818705993 862891377 957795713 772232701 29454585 576165609 798471619 316101794 437662718 757998913 692089692 779700228 871988548 546861638 182649582 127537391 464161045 51141443 135137419 463417682 42411259 717539906 765354894 961134694 469672575 72383776 737392686 499841793 105172213 632591833 128488157 440541982 599534180 870945510 255161831 178670446 201027243 426649527 941136343 636373591 495014198 184310872 704652960 263782320 526967402 505305030 712591297 839297114 299991893 764430937 928409816 666386311 926980140 61735582 756421476 565001149 817097340 884826167 643665548 573649560 404503155 93598916 759321151 889952300 299746291 191742198 632553817 456864714 108454436 221290623 599961364 624578640 183586124 777140843 748950332 904275380 408842175 903617007 362360273 137423991 81352216 785666697 377576756 660778384 613695414 830701603 708492198 609367061 607163845 71523239 834959507 328507929 387517450 47993725 743376564 743646642 14901601 744702805 218447788 748254325 122770348 116292433 575449287 119128095 517813799 748815469 175846687 573451016 889489645 827449777 646397833 649985707 517717120 261241380 638692834 778532616 54282195 116222146 379309777 161246698 185409923 338979793 245326780 665783393 657727148 812662721 471161877 363583753 332924389 992956414 791722435 832229573 241737416 178109433 454340181 244514587 113894821 404740930 481607008 338917145 439440323 947940111 956725869 860649654 572746499 782490608 912260488 842345214 384841153 527140572 495568197 366393155 436937006 686023537 796962473 477562521 698606067 686064207 864889001 421390848 241801427 989671687 880619489 306449295 981891458 506196473 121593274 834058250 594101045 383600561 722724710 223667639 555304199 255000629 193848045 948090759 758807117 175238121 653862704 791747552 716662100 181948471 146663916 439194192 243549523 204222178 311828977 993280852 839287446 702855929 113962834 542205863 332236048 993706378 797750530 345399484 263092684 848648852 377123942 475171189 361008117 385802384 883014742 76538981 383839613 626267862 218089483 847250029 68775083 737511365 670914640 76817437 326321706 681641185 614405362 7444589 36852693 811268653 264210687 344669493 404659265 454604148 398015365 95034882 151192374 595776501 734491899 745234925 299586404 303493516 289291098 74743646 95485564 729320085 157236991 231752234 157329412 104727255 962837193 22324258 882100334 588220409 262333277 747597741 738284042 964255571 896853632 263518765 33989450 961315429 196342900 954172531 227879434 196403771 506768666 768057234 900986943 696697693 800917135 619000537 835220649 584476479 691190152 621902513 981405604 123540845 938405228 7324087 83243085 518770069 131819539 425632061 660368157 200153711 677648399 826103846 524994403 179461593 299556365 486831769 654644102 929710199 876362460 278677622 231528128 446065100 127475389 277394548 818959770 537094937 92868882 643124621 756170047 954112770 875413926 642170079 863548906 671211398 818574203 170503513 595957311 373561678 350000241 911109879 639495720 266156187 867127810 676051896 135118336 949713908 746564001 233371587 656515306 809899551 802631872 739482692 567164118 136546474 355695967 237522393 137805780 510881877 211426433 402088778 958041640 529270109 590858201 116262397 129596859 217294275 63361205 454258927 177623680 929493618 91649174 963157379 428067192 275470091 282563789 748033839 427689624 371351167 33078705 893298869 61452233 723744949 552165745 988879028 407397851 736583116 530679045 945003220 926778596 594312771 290195054 919372667 794401405 787958404 867709118 26206753 918337379 60309910 178601992 146791605 180208541 749807927 691944372 146064622 792040920 822653079 638158162 849103607 217390151 353118061 918124831 289994224 459439995 269777605 17452613 70916995 329759285 347065505 921372959 675144939 939723237 631545308 878873667 688665001 515620132 41742993 179893359 401704585 36022535 98387382 936215644 460543278 155953856 46865705 835120295 459332371 917094083 432744778 868735057 545462201 460333510 295677116 701484081 943735162 34794160 274177340 841960788 891644345 795693410 962336227 8094212 105674235 647327790 241439118 748231507 131050703 879131846 437790057 524517499 254496143 352309678 237302984 771476628 989219978 162367275 293540013 124876223 40379207 369673507 318331173 885055256 626908831 44671613 922554269 21373977 611504778 193933305 360657645 835808354 634402257 277903309 380532479 354346229 67220442 167833260 78899810 531611448 975888224 950927383 326534785 207841071 209757945 886034310 981295755 169566584 155909170 690464999 40828236 94862842 277622242 265468058 700523408 474433013 911875626 932354484 927566853 746426413 510264601 448493707 680472088 882192945 600464846 59573 50956453 200498350 223099778 614914845 837754441 373278681 418532019 968189098 810956054 157305729 74269307 397380838 893767038 809072954 711841507 234651446 888690194 774325618 756633951 504681576 350047015 589650587 119791225 868331021 212914212 886193280 6570210 18775922 711447603 101781359 313957336 191393538 303503030 691182955 254747105 46118600 983038350 576210844 536968315 870837266 546680803 400178257 671737702 928092782 527635209 750640211 428022300 348970464 580541308 101843646 130201800 61047985 387527152 164145848 474524501 571159775 68192398 313668704 440830917 766555531 31736239 216072462 715060399 735178595 215850887 992130217 962342710 602345504 519372253 710153378 966006246 47029619 515594386 931858168 474917159 33435429 595432175 990645485 843626052 367275915 492093699 242283904 980346417 623758146 143299016 920861808 575663262 194615141 196871272 606863773 257682014 653496683 745067612 481867875 822124424 531664289 406401011 307347767 726245108 819341334 563585574 163555885 134136446 158954750 166522735 658444250 883773294 571931570 548929738 994295185 166592587 8291036 246902727 702960873 55801236 224359094 889931156 358126054 362116688 789470362 18382894 539051246 260974403 389823492 541366700 726596294 618624561 291951564 996318033 174276979 126612429 169546767 162080285 299100448 24881585 831499010 924291772 685228045 861566653 223796478 456129962 785005824 782126211 972553309 635836259 644689277 955459046 65710981 700809860 954861455 529051497 69597709 548297134 741084238 80920507 869140884 257458800 781105152 564782712 347228341 272585510 405276695 370181178 311101147 429988600 434173459 708062460 28286014 719532352 433311547 699808945 415311257 26581574 896758361 516590878 927822699 493355970 104842178 53151470 605957266 929092518 704056715 715397862 255789017 841478941 136033819 713572783 969171450 251754763 505527920 676070258 358869952 587917794 694992498 690425548 776084151 502968162 470487568 508150157 755282004 797097991 500151090 654809535 77059742 971015629 738887518 504877508 978064578 136363576 719005950 233122268 876826715 262456334 612595938 176532190 544609488 90128329 497144643 748311184 146153835 450196767 275433408 689772267 275805487 183475505 295487571 831389016 263533876 174329883 430763377 639565049 215438000 20151479 566749625 954251942 908181148 5471847 308643057 662012969 661961169 897908556 434989540 185814061 395626774 818867867 326577852 112235224 54418448 635235378 260928427 64544657 956758752 694180982 258644144 378376148 602778489 671550734 562562686 835082209 297149843 286959539 61613497 303504584 902019013 479469358 623918982 801973144 788298504 536174190 414194272 861713105 421409452 40928893 211429940 950319808 959633693 246356281 9596263 247377314 451584460 648130142 961141249 621954872 994283337 155019849 999403963 462260968 493952181 687061781 545497239 503678998 510378075 783225883 168655789 536869878 469814623 723791180 97696961 949529314 486976991 495444230 717175697 447716500 172452631 292399102 989889104 576484678 235485523 971333517 509339506 147105200 327852713 926673707 377213895 766817102 34384701 546668642 899343548 889720741 951797815 975110362 428639350 643197586 465189009 858925545 844148414 895976856 212457706 119831136 574245370 300102836 963418225 200167487 388243472 358574630 77060542 14003828 946907601 916295146 453657552 26301176 843232534 880720115 156874975 525551005 885855167 839285553 887752947 935108804 554247950 127392660 822801222 744618804 541235479 341153219 780125222 323833389 307447501 350617159 244742521 562029815 376827240 981140531 144142827 282956388 835617902 336319278 310567451 227420658 193884125 609615864 544586653 69571450 235363945 605604570 801732823 326473089 142818130 542786828 963281872 442605372 435746400 460908128 632492692 221297307 172409195 95519529 771511831 998763890 159019165 291603181 420791600 243262723 566934879 192200081 781283297 369233058 626813544 860456438 432491168 595311782 938331347 550527103 344077229 201080167 377655187 92634011 403935713 476767240 386039782 269742048 289457290 648503852 975659527 689024464 19386266 541412659 161596728 601481408 764745135 674010178 741618313 951175880 835243811 903388613 377823459 35990605 378368913 39598917 996653992 143496894 528879921 498894637 619427404 527356874 889523068 866373442 47436046 379086696 257663449 500018025 523422180 42002269 88879871 285566806 662787496 282808877 889100323 232215875 998881041 320195380 356971743 113118145 176689574 788384277 50681033 408392553 498586973 96306829 311187032 132360648 109689894 606800986 619294629 904812521 630105605 402352543 956439256 661421857 701158240 8619951 686512843 577257114 425386561 118261345 85722149 918999972 23452740 39392071 567564961 800433339 5236481 648032380 645591110 650947037 703163889 479807790 518645810 860297661 990673859 488710745 171187004 86583047 787491231 228595195 431780673 494912 455083925 76006327 192517445 974370823 900748510 455800815 19688763 102684027 628934608 790782820 885094347 1877635 700143022 133848815 188004143 474688382 355255952 997755464 101123645 92809076 443011795 492343013 274590517 856058036 681392841 319697842 716217610 709838022 349309014 520145743 722137820 247666670 809119701 904693750 392373265 337841941 394021755 547571931 268705892 855320090 236394262 531310779 775088427 442759978 287967298 298467021 71628159 681553204 937641309 510493785 218807945 364018812 768733735 827625020 180318462 652813231 313922468 351194193 498402157 329021690 696289477 975937554 658113240 327440617 108677769 524668983 990002672 566329302 768372943 486794828 322073690 482759294 793640841 637370049 611289435 626070196 93402251 129866846 740890388 843668010 803963883 760341266 806552081 728623482 490517796 427111789 715759849 822211286 246473011 90025866 240338304 270466140 386422873 690916163 399796237 611276635 445007007 456613929 227876193 558753978 494742913 938528573 195538931 304904189 155682651 220839552 823205014 598589047 319077776 966905846 359747912 932785339 524483154 689831798 119792238 763080258 144666983 459530630 451777183 58842555 356618188 31355159 542910803 341221266 364660571 866473672 846180463 74258594 350135773 82085383 653677607 994592365 138613349 255858163 873136629 739089787 791020594 188902071 580860518 531544947 475300679 46255287 41273833 129396751 55836077 401418992 440379569 873464190 188138112 939888781 19638636 846532570 289009657 612883470 774144121 163296089 638376097 142913155 779127035 916434051 749794864 293132938 331596948 789943334 411947588 728268447 717958991 123225855 413648282 480418006 615597432 428564711 51509974 699203419 158436193 775719697 246376699 918229784 749929717 529438522 241496864 898330755 687556300 193111822 267954381 577268055 915812434 260837058 153945504 235721382 970226167 234471583 935695999 263706867 768871107 470085232 636502529 837627666 870804171 440880010 206605012 930229466 320179178 825433474 274952090 257694605 242656352 489278457 26210099 877020102 503730333 81187128 849069870 504255676 853143598 331107654 221025830 232778604 987189278 93385311 40516483 995938034 274104396 618533266 357224377 294828020 720498388 874111978 284887156 882274396 427669627 629520222 859737791 514497711 431859040 81283918 777572337 317721780 815394285 593342183 261111048 403998507 234365785 939556966 106783589 931016364 986703 973082007 305840053 282130308 250086485 321467314 634847914 742132299 696540924 147813219 237704182 931015818 175065712 754303500 456876937 217619134 169332702 138830154 260818473 146933729 812152682 29453970 414024379 87437911 937762416 449590266 582492831 897479042 383088366 980299256 263490355 896456979 723903169 606136912 314687332 760278867 726965950 637345284 15973913 871203561 253521791 886936379 22503040 199364451 987534273 79849099 573974058 601510678 17452600 45862028 986661452 32626630 385046065 861229723 657861628 747107920 251131698 542976212 537641085 480357987 795919866 679497674 81068707 233126753 535245912 613522687 405904154 916626752 485672337 792620846 775283500 284314089 332382080 943934887 942108138 744693533 457025923 311186116 193108792 8833131 274431274 408532858 836626978 31337071 593450177 438217924 708894533 257303583 204335817 950426624 529036725 222533512 192885486 237348446 27872569 262436230 676122557 392490214 453611473 435862066 335108490 433193586 173948225 798114667 337155670 871738585 476212580 638613250 25247503 626194466 360722002 76673937 806249001 135414860 200017292 277792145 7202882 53938498 735970579 581995483 303124467 20451253 557390439 3987848 578157680 571518137 348625169 304443664 470736974 101880500 33193953 696292939 104442040 357952424 991845443 557740295 66466762 156877086 63255946 784643172 639078320 59415835 71388088 149171986 666369906 82314747 970072234 985731689 917748629 759549607 891956765 838783611 22113940 106557752 478806497 854882964 243089684 872046518 429474768 738581602 389041582 232446933 554445706 823839723 994092202 879816694 738585133 424945981 357787429 244800589 13574490 745448283 704693857 273740298 159920599 881785250 9350495 682722639 440056339 49840821 408980988 496060147 97351848 531443543 594045803 936204812 593880887 595912068 227475643 434791248 466701789 983455997 423256364 87234134 113641604 903303110 774685437 357314260 479453837 629162041 479583273 212783517 932862573 412398651 919663214 781557938 714886129 903716192 978504519 34100435 451738460 963483771 575764367 69047367 744876626 324895260 280871348 269333351 589216681 362634154 445594438 100840867 14013946 232085011 439036759 913233804 253396133 494781265 682751390 674649983 742780703 668253340 457249101 457820497 966925861 904959168 515928283 966447148 648320879 30585667 291785637 412307181 628999106 765217350 627813752 650205483 918753682 532064871 842115770 860699563 600286532 881364180 428050231 735063361 114193372 591777318 931073393 963524903 410777418 323262079 217524409 241416542 423756817 332355569 808586348 37509055 928266068 65806168 218803944 546417681 994538562 766464393 758075191 408722502 331711164 722001157 296499790 949500338 214174785 540299738 146139710 743092358 94270384 375277892 260260403 665727773 502205389 516987272 763878018 76336466 255055419 498742516 123474337 164799200 479331456 644938658 405575268 467380662 917321176 950398985 409925516 26501659 428362507 94327177 581980291 793354171 592634187 21602234 442834045 986290356 699258696 811861846 141826405 594584856 952313789 644611414 827320546 613908070 894748200 11159092 169081015 394438503 418546134 29634326 654132013 9971784 721301450 760933777 698283620 254551925 402012061 507335686 471545104 556431706 557667105 213512748 84255289 23994 343128406 573996933 918561077 807883436 504154624 949548477 487718612 381101796 549353856 34478420 601479802 428718139 455756766 518539125 581281384 536234692 854794362 414866220 733911062 574585299 459321072 267254905 85330826 808343236 573739330 455915356 448263704 319344676 353447231 17368218 754031342 998538167 216418164 302755595 528638202 183479037 227263475 851432136 931789917 214487578 538756442 926536372 151315107 65459042 891817218 96847162 397082489 691437598 923379092 790782612 497659447 519161449 396093724 114279524 936014189 303619541 220411515 49963012 135581635 329942716 435309758 850736714 874842471 945826625 996261115 97854239 252072416 685793265 409700158 285515607 740054744 6235206 279408447 705929793 683864276 993965132 874652736 424304897 101293665 431834473 761062034 541135021 846248857 829434949 727715187 61846063 585952168 825424379 161586818 207267219 618299269 2487653 510460167 806472224 958805176 125685242 658199759 666960244 132559237 134956243 672010272 543377411 673320519 981970485 895005827 612854447 542099923 375862009 318792561 926558831 500985843 729913675 643601327 198564103 354501122 194528099 399436118 824123362 189109274 58715164 621802375 505236663 107914200 247246663 87394911 824526165 136501288 902421612 829240070 176570565 352090088 82756043 56280994 900832126 155675486 654710114 896695553 795731452 623448101 698728371 600493169 144002131 859215942 547139184 643052532 193609621 915831729 673161198 693831535 300838632 128768976 676454635 800953288 963687468 808808172 390133424 941279494 848663038 556403920 788992421 158326253 368389424 111923790 318135029 779528401 10481031 684098127 147641193 864295053 303970925 983665629 23657397 781559952 865036677 552243038 568089664 714713724 305159046 284339140 788851569 722177080 913117731 622197268 703529872 682772460 656844443 739172187 192044949 939035191 291406400 810354035 204606277 955257045 508243073 728797805 712949547 352832355 798899387 802626111 802584551 450772557 656121159 648204249 894707510 623932061 986615923 576076814 238386625 987615431 319753449 911917791 811226641 471188001 258552600 245477086 528620860 12702809 693541807 966668459 174909383 229627212 360941260 217389804 528434138 190440351 127949015 745592385 203869728 551774675 696624842 551545738 865185038 961769520 359859036 94552116 928641477 848505277 858929429 489469787 260708778 968551334 340663708 625827803 467162970 12676973 146015911 727015485 590715814 328636119 218684247 739013786 766806183 698837339 41149342 16919559 453985951 795722719 141014903 144682783 175129878 649122573 452251997 378106748 498746551 373161598 533048027 606391328 333327947 328400962 909825778 501781432 831986260 38085497 641632637 98631516 955522528 351124240 129145756 466260090 334652467 507649182 460068602 105860845 632770720 580706477 274726479 769866804 772154448 960219060 162995616 288072126 445278673 635539340 183218121 279397923 314339725 394556007 70641833 844079192 918294943 306782275 464270686 406982970 451148117 659463236 748120741 472424565 942843852 833720605 134898967 939344048 517092688 118111721 274427133 409960890 807941736 859452385 603849102 554317593 444243727 421277866 312900728 828489618 757864161 31518531 154750331 424966768 339778053 910905345 589171792 922413105 424766032 850919730 404811691 140835149 556487790 495475293 453014126 366796814 411788956 750732290 853541932 253210812 407200723 287990617 56110144 96188894 807081039 657130579 920459765 574186629 955676412 302827752 250577232 400588087 141295074 724007108 293425868 454350281 366302565 961445122 54272788 323881364 748033188 635498667 771993608 561067405 964911984 809933164 858796510 925961631 924528873 255681771 464487803 250834410 139250014 401627798 976565580 299046975 166254917 132459802 462001873 519703869 238755100 671984921 548306652 444936635 568865059 689562160 770543148 827143545 399332785 568948415 726301134 66708110 399876798 360865294 628965616 83487094 414738085 614879232 630321268 483390886 324642566 23498137 747046956 456520560 366704080 328594988 722044198 435078683 800039447 455925290 380794004 147728866 389972238 743536699 104065433 132970526 796379623 292513055 180230293 320964136 30153588 591259757 286338147 620370375 480355915 166055377 788279187 552492084 103805710 582408529 900435518 666652643 936153570 997935239 295861846 460001906 404730105 545906281 209303088 200105879 703780326 422782392 879851202 792480417 230526935 109556132 41258066 545854161 7453262 864193143 862610523 810506000 334725045 416093575 308512862 509585371 565933235 256144595 785653118 185630161 213069049 319769458 981007455 106927912 617939563 925335861 66694947 90064503 578826043 859638820 582001591 655792669 645888678 160332670 389169393 527547152 722641798 142361039 281871095 481769743 407280464 916834567 274653558 224906162 51031493 554619401 187676363 953158236 317769595 866714746 292756730 9618292 683390578 381440304 798815809 807998168 607480870 399642508 398350290 487231988 747530820 192346985 133289127 94014998 877073247 846449913 110798211 710754345 366067223 337240978 731808790 360104291 166043901 684819036 763132767 443330251 593778595 536216988 769523089 77421843 466259986 272792629 483857675 803895817 85096255 966265640 582649328 14304031 238540769 342598305 163141756 119646488 823862358 572324014 621204445 411941162 201915218 102230330 468211496 84669781 198564218 310832769 529261448 102544435 303939197 246931029 374306510 591261658 873400463 179478673 615657043 155455671 63910730 986048768 478063792 4972387 469027690 850812926 130617088 866058255 501391124 716319321 265090771 247145762 598937445 952779252 342435226 398707594 35539287 389270953 392121641 782938930 520170280 235160947 617344583 436871183 444174671 844506773 20278095 424587565 908847735 237484898 588051996 463776064 566991744 21942329 88536713 205967736 929458677 201457283 682645191 162243839 951205352 349211776 466009174 29426249 809228407 632387059 371618134 156267801 99764517 1602331 667923842 609486061 995997586 201808049 318456252 274350438 241811363 340290277 977238572 269857851 803325372 327252605 950846567 866066703 175098691 280822024 234586976 864153949 779766932 817044373 331119356 110533772 119975574 429867973 845465820 202021036 231531449 497106862 149774263 842967185 202183286 591766410 419722707 949772859 405481131 455699530 224187601 393009689 691678468 863918958 862590771 7895637 866643019 118361526 559250938 623468210 587713371 431706358 678033224 327628647 987761324 843598905 525898696 773701517 987331405 368595443 138689203 960971232 324039404 461851341 325876282 563607031 558311124 14498066 211439784 286134733 960769475 994038019 433274822 54579480 704939598 444289692 490871355 187707227 874285726 927283497 719302400 883381945 694399329 349422865 981369412 973645585 815695244 352890234 117520218 669964854 363768962 45390705 67592580 814219316 357468895 205445367 574303358 986747415 361426287 136164178 512236338 404202951 686187304 923945377 208986401 706303265 290342857 114637871 361576723 851187105 397458791 429927145 88261271 671742027 228796732 464746042 126186064 12845175 544980125 861693849 59766430 802278865 466812736 2066161 893971088 709141529 146830866 157661458 984467343 882575777 528095396 424555624 698336165 934608031 212641472 643630033 448584179 211465121 345182665 543473460 220429603 573287382 842414270 304311969 623560094 116664540 255326060 816394406 925316089 263394080 438874170 373811592 429355861 135084882 228545804 427136150 445667681 411833837 428781996 279004920 273995339 919937127 236550399 68763886 858747786 306729259 29906875 242233181 492840101 847518566 702443972 966690510 258181467 17222727 649643411 221723949 803147803 709650051 957790551 625750989 231142476 322143393 50503198 704268452 129038252 416443111 179570856 927363890 322752998 135514980 306303242 230451557 835120174 897948251 63952490 701457860 610642591 94327894 90240544 966216879 787493226 871935074 286908356 850282699 569942432 397349401 921423335 100707815 374849858 133250913 361228689 156448890 445082892 499131432 682846262 140066658 380268468 1629532 697655994 938692713 498894759 819780573 487823503 297638880 390169270 822199961 224711497 706414296 704566409 864521314 285372184 390522369 790309576 357204529 865486987 302271612 482467091 332942394 977343697 929727789 128805790 176603198 855324750 658995384 348292541 251727508 825208963 715316384 377108025 333937653 904413461 489866188 228215848 151801273 933389258 288941129 989453150 508408089 850610998 50778808 875085305 876018506 587997430 612960525 62016712 884351728 362942374 507439311 685499908 83989895 191196332 435815594 812669125 444106483 526112116 603100414 635874227 521304820 142903602 810079717 606964467 427335013 873556501 267920905 20546495 116181099 915731709 678776836 371330523 506789912 61959234 231517593 566623911 213896885 129761046 453443789 56263007 110181673 395604966 357766228 18244470 414324782 483842261 705801635 958224848 949631779 873554407 347274106 432380286 117683735 910451094 17766427 556590255 96434001 314988486 772323866 284548509 289420241 785691686 630208847 844452588 738170867 724533362 493925563 715211814 349954070 249138149 604946110 250732220 786001650 242076576 720882317 748098256 668287588 985137921 16256156 877705854 450056561 935060503 668367556 136925212 268985132 53739468 313831139 880768446 333159503 925681283 189867394 766032039 632522483 380670504 606083816 149102336 635687606 207344545 409668109 730981912 300043222 691657145 273509503 653507113 371177243 7693434 892060806 829029615 906326144 59736721 694920292 15669318 189330934 252992675 685354375 800772351 763716330 921987979 240558240 894764012 561928510 496617724 149361040 524460394 103110130 937249296 756392466 865869675 121345083 275298417 669530223 449979839 22898700 278140185 398658464 693381167 483185549 591188503 106349249 382731419 633252902 404199085 712259053 709540858 199444820 359989823 157860285 715858875 511166737 530919317 143001013 979051681 864055987 369424040 164855201 54362067 467788590 845725516 633833399 375424170 274568293 213177264 593263319 637405597 265555327 66614850 879834235 419172821 21034104 756754402 595055001 994112819 172634178 335994876 414953918 33654267 175923509 698703806 627013181 399744442 435877576 894791727 535309010 220758601 75559485 245721967 637392577 308851575 108826120 643643019 620000762 4079978 677807659 333711298 32459038 175332053 67511419 38076636 467542317 656849175 546513562 386832500 803716106 966877841 316643563 601451208 320371504 882146183 32662460 590507850 202551533 648097985 401795573 193792785 249374682 840655067 328681527 297553596 26720681 54755968 619442909 845693786 989559100 303986215 680754783 3457671 941595662 532518338 804821287 959998302 993116260 164415633 378453063 476231879 237150504 512280541 381874322 806859855 829605222 460591558 482900580 212955522 213156557 607230760 629684649 519414916 941189000 32408343 937830247 656138797 514088111 312355272 449361240 601800153 501041236 491041239 839551813 269582993 384306575 85539515 333214784 289064150 291229014 388775655 45081878 748825902 445166735 942514851 724039774 511589760 420017369 929810743 527429739 660301662 753933489 715516500 493179859 509357267 140695321 907602210 541211120 831615901 955061664 173622414 469176656 738858796 42459382 614182817 969950672 95372890 535779019 685477591 751008936 654665202 189182511 505720630 104635839 253070518 306712455 12314254 303746073 610571155 406823101 41111980 416221807 943156934 890704514 328667280 509301022 240989548 534490858 523454037 259651762 700954162 529210692 962595207 711847044 164544118 308551657 91158380 223611815 714094373 945260680 643783421 644589959 981778128 144227646 337683886 183472866 595649948 352103675 583532504 746629316 894166399 618052195 53246227 122250284 594583016 968848755 365359410 170852032 392292956 576617899 822851022 176833395 357247709 193994429 579837342 384230015 849410655 527488250 787395760 772097485 843593062 399495528 186691887 322823788 653768090 5771675 98373337 537210049 928938197 924820776 542676358 396064160 997616687 89762127 937592143 599030521 266773389 237523309 117817096 705022712 461996006 975682670 109329334 186100282 564870239 385773924 383159009 913233718 432849535 880500910 711180167 776122793 166717557 352643315 733313001 789660720 522007328 967124491 816405914 315458998 902691651 75942566 627248082 647475103 747104725 42195177 119198629 206988685 789367180 42746837 279372938 18910309 792536878 719849991 816611836 874146234 419984242 788706572 920017700 785475623 203362436 904073610 323806082 949090488 567533773 225499470 101347966 673729729 650668784 321491586 597193673 228012506 837820365 647488537 286997640 843633828 607844778 653788566 603219144 475826778 6637416 873678178 854483519 70812533 858201349 355752249 839752364 248667781 734847426 108339339 912578940 457871109 979849795 186216739 162829877 423911164 140774447 636834844 341196280 77427360 966360373 775959212 253367843 477436015 561146715 552537823 829144330 795115107 17956853 614206540 786334489 357389312 766670426 563986560 341415051 30434472 995974554 747386034 74219308 779747115 912965944 282598347 825137329 562409221 94926106 629631854 505597449 739906689 488646690 308000 203385409 756035377 634825257 570571138 355224588 363339097 265484411 413182437 974549412 487978278 455742461 167724507 757327395 8323214 465591722 835796598 576170886 858755282 65000905 130322877 340542137 231711845 417427320 899469733 796462764 534227694 235882568 638906877 155578360 271064534 385909096 22076053 485750303 876694702 769862568 473666324 348724556 677804830 770370680 408677254 174374719 229922018 889248890 719401737 402896975 711672930 651499416 175607093 543881490 172665893 683663075 576031517 161755606 294379211 952718883 300394587 739818255 249275701 426510177 631108183 378894295 830406332 346636294 637696315 607042819 753854158 247016327 670017521 597109107 788096901 714275266 484163578 444397155 351871682 427084360 821387039 700140130 420162204 562410072 232498437 685634525 17338489 9898002 168134144 701135051 810474364 106756226 671337435 371458180 406063691 443140273 872430249 648558367 246046118 154066411 387260180 780491285 228644588 532679290 480580708 702745921 361399823 386978595 263954514 203673893 903582723 252443059 490695231 846984522 350359345 133755748 204141334 731341445 712761858 697601627 530555731 921993083 410745705 553322842 2788952 505035166 885957795 932609320 521747322 355943965 757655720 908807403 244549949 260073810 412418948 565317000 409785622 341484552 667745634 107636564 444105412 925169195 136633605 723612759 260293744 596417138 269761916 904566645 116469709 337160892 299016650 582605491 300682821 226761683 144847949 604829799 596154640 518890736 4783698 247543158 406780931 918247352 855250089 921606479 80048186 665692571 192307184 341587639 912787551 183748281 651152101 219591685 250254256 490484908 25054203 159391578 395644309 963213759 566844446 360320332 152045222 656725919 577753007 184917084 330308649 533515763 676221273 306392927 488881614 278339793 548083821 596883844 604922242 928592100 482420048 403022384 348234296 426332977 422464213 206227351 891621361 31361890 696638817 778939572 288015891 685082484 554983688 868902199 27991867 758862389 601751083 314565513 42565908 79629627 626990585 772752824 557839077 689005043 801677182 909059407 841711034 731917183 197305373 547125180 53163055 700635010 192657658 238825696 630384289 427117025 521063090 732853063 218678370 379429323 296242658 260713115 401973175 209966392 769924434 356135401 16738131 53678003 674294239 616705480 577856951 349488779 17119776 682077315 843842157 311872131 143555264 498027816 236244884 786485191 913418360 663030052 370383620 760143289 154760202 13682248 919169935 988003011 277026612 611356647 824596278 483067126 187229468 409441431 558868463 897499965 852512466 841568074 72160343 871805357 541208443 332772356 843886795 346489443 22824867 285359958 293815249 620661103 189287164 404876539 988120318 625102731 44756069 184176340 132024506 328818443 909642602 873141307 97323426 356772117 620685528 554362556 928225276 155784898 983374475 382847354 203891178 557341448 822103965 906623166 253897179 668482089 795751918 100108505 131152099 538298399 429462360 747954848 645007504 266833228 981718483 757160030 657948421 125783783 257034981 813234927 873852673 37551422 305681045 366404572 205617428 700858943 655085932 555306607 186450676 780210886 612725773 914311805 423637438 876913277 114643546 356856181 621480676 901708016 190726689 399474513 713272474 313198566 669489969 856564294 370474982 587082849 604764728 198234192 242353091 388045828 258218241 975653200 764375320 725435476 935376948 333414 445358954 471737375 37767642 91080672 409477733 928448505 243923342 941154694 690054533 629233358 505580773 26339503 883289392 623940463 465063280 761470753 403994001 910771506 723647513 672184474 935057877 395028676 757655740 988487947 704456074 479520370 57971116 711225211 399728238 425879332 73377425 982032166 159450595 607115070 295514595 752963876 201329700 373982953 717597640 792305466 394734039 553586808 186776237 798675750 76677211 250506869 8420545 382186629 198440376 18460088 821885207 976179166 566849299 331269550 452222816 982107885 489019490 956563590 752323902 528322444 926797421 259801503 186612370 178863723 71964571 477783707 645181846 259989477 39902413 510936176 159138597 209011998 952559036 762437372 109677234 605084028 259058941 554156648 746843769 873158904 284724303 120101162 564891958 517856261 342046693 885056789 676985883 33118542 752339411 469761343 596528654 134838641 898061959 164792091 595249824 899394508 76640399 35432596 840271815 804446163 713578157 552906457 810380468 806760931 975670353 215916088 438506650 351175748 276722217 370627468 920982449 440145949 27488233 455696012 449093948 33222148 447068210 914568403 591640952 354381288 762771944 685999922 101722955 829231526 216192507 375998799 506249255 239052905 720497366 609211027 84087202 397180886 636240734 472820795 424813221 44940094 829114019 958496641 997509449 667644640 74532147 694571971 981049274 861346253 683606672 464044732 999340864 228557749 888097832 618123839 27197053 763472962 216252252 374110290 796642467 17494496 638353147 918401602 542105342 74578441 641809342 378001014 567442080 198328106 395900262 652991991 374412680 442041963 253744514 147396886 938197819 169711614 685584884 811689818 710593728 862680670 39629053 754151866 30423367 594735364 615129677 704951052 699438777 633535953 768101472 357119323 61569498 934681435 537860669 554030311 676390836 60041804 377101049 201496543 747482728 51464996 892322840 267613427 523807949 590986609 261397605 893834945 166159390 183449556 467162741 214916902 144062114 395686419 194892579 955093203 901820478 659835623 659534502 78216134 458622765 728815205 831772342 41509584 589292126 225795520 128979591 459330347 393900003 68002905 673464612 578390904 228387252 663728855 162052574 377961445 565075836 268582665 753946584 879453795 233688366 878043266 958624862 110801675 758779217 558784229 957533972 120575420 823714633 517595538 839007456 192144830 379029079 385438378 908512393 902956287 454416467 711367148 199419468 760603306 838990775 719107462 228093900 158875078 533317391 489113008 283916854 587037104 88828941 2610278 644853193 276011190 549762460 235981948 458328931 906653236 15020443 560374993 935773439 547848561 324053747 334606264 970149806 16079456 649009401 654631664 342849826 328363981 731575792 135264230 633627695 601047638 876181811 899054246 248096043 236067456 578797927 338173998 758360338 921536271 782732254 407574268 880887967 765015180 998321380 964203079 493236511 641637990 69752159 439469617 973100638 333977140 695384414 853222316 660684483 93256439 857630018 721467474 781900134 249494604 557305882 24543289 589677957 782989793 511472047 181538560 498025147 620735093 923393494 732575840 710378790 279649074 574481733 39292619 593111037 176967360 755555617 433777938 615740967 6623932 482642722 763803986 561874000 291606078 714319589 101869792 697251155 213805354 360264811 411539512 715999119 328259079 323042712 226566048 314395567 839969475 478094012 313429305 102526890 95883692 298645575 895945508 249953472 456978870 557437195 282697626 131585927 52606790 43215431 876775929 579748966 707849739 932759001 642849828 491527183 673442492 278801859 844010228 107058800 437845560 55198398 570610528 850470470 108954674 785989742 822061992 255562704 388444592 155698972 664441636 507044270 482864930 535241797 722273176 509875615 542414866 633841605 11426128 272952107 840053433 261584956 206051020 749148241 886605542 993617695 84169053 192043100 393870281 318677108 33918487 93560015 910809634 410399329 379814899 543240095 265394913 177405837 109975407 160790104 566165342 566888040 956215438 639144622 914699666 679458673 794133618 605322795 25348890 212297912 325667081 79725565 749280059 74718318 240202819 619992405 560549242 416175585 865420655 72200432 46968588 36659805 151784988 262415563 344518077 974003107 902826114 275049263 689474118 199094239 370767099 414470891 633645749 427324189 276214115 659792858 551321285 955242079 53311175 988567923 203031529 421534522 641157892 409570339 424517473 272258575 195815476 22420311 567672007 584767849 722359471 995309191 392605158 502184747 474045887 654015122 569207563 755662997 801980748 744352713 467494638 136539011 592593235 493925784 103980098 23029446 582566856 492486420 644769218 958872657 500807824 992283874 850575514 255644410 247183067 292792821 349222700 775929073 626058015 974877585 797952032 317926776 967631704 363932427 886151185 119077103 982135170 469588334 486069529 847208694 154565812 379178123 77488197 640577832 862457933 359986196 80500969 294596169 794869605 217463168 573219543 692805593 73754206 709963486 493831428 255587417 195896604 979548548 474410485 477982911 616614789 611610652 743334117 754030004 123896531 337933430 607052410 593114659 897048621 212365441 404780954 725333294 778125878 346602394 364157135 877438998 274963167 948363477 631807532 477380527 730100122 136141579 592138789 808666018 18995579 243144466 520385069 471260806 866626106 5937139 402664710 907487104 803654700 816347409 693439185 698397357 7611154 275783216 22756229 154937916 247047321 792373776 659103353 733326183 843716567 716897386 799320781 92590744 584827589 860716224 696819433 920875061 228719229 391012153 784964508 345987789 99425041 689918582 321929849 257894492 946339884 460673841 584472521 258232840 541800577 890724712 175470830 330711700 695002522 413537597 219249284 9235799 534138937 951782127 841886389 634300000 833415137 974682672 687103025 760299728 473444409 685324397 829794104 699385761 731398444 330161154 728344749 157409792 743417784 381739016 250348533 423915216 717434934 765209483 337370774 263747111 115014382 853114799 739748371 865411294 971752170 348910661 914215745 80309806 460247382 175013548 337231758 991787582 514256843 640808854 108728242 639054277 81340757 223063486 443679480 734017250 224738146 355961278 776055159 908165997 577691085 882648193 725809166 777278042 158802940 922842395 938101928 116828826 452834817 445130991 62609443 588183953 111823395 594478796 895993662 77166482 908368313 14093033 930462818 452454587 722302172 740433997 316961497 630670216 373032484 929045141 170508006 769868895 556119552 181467373 432086263 75530258 137906239 464338083 187867465 869241506 559903723 217865119 284952804 883273353 115749456 870552011 223077134 630207308 760785802 480934066 270646231 593761987 329610723 318282554 552414300 954378898 617250723 811503020 296389585 746736887 479774613 105149510 254208607 802137040 20823284 402554668 649446706 255837668 865095430 646284132 447146576 606546370 153441477 954851071 46714504 177068964 882203684 388224004 12272927 193014129 467586180 686731614 31131024 471849951 218846909 790727744 580350051 52496418 89795347 588900443 866825621 983299713 161569797 247263120 128712967 705310210 384707564 240260598 794983539 786305614 184911043 152397461 176064550 44818561 860632485 566077911 680381094 248835819 151422933 507875539 905442317 455517134 468735256 835107600 344850481 794455161 32776456 819400148 390947865 773620290 986331095 152977633 135604028 754889566 133803820 244396974 367483538 331124408 676347136 605176323 390746058 755711015 610455956 382096303 924950681 108308759 957035969 940152486 473173838 951586302 624622066 809940102 579507505 321450282 688871330 172862068 863615737 310764080 338894667 165592004 321117718 762045013 388167879 170196414 301206626 568233309 435647161 628397109 900431568 555131165 113204167 429356104 24281129 138687626 16271102 860344951 623725564 164548952 905217032 12140376 243417063 267311957 632111438 766868735 342786266 636976832 527084236 977745167 525253517 654088109 625182587 930060155 318157833 455102793 202359075 410814200 512724813 128599760 396169998 594913675 696076177 675793471 268152983 953759110 857337843 886150436 60214240 651956777 885408015 405555256 182021668 439019350 659255432 944007484 803332039 286507125 410429902 362114173 595583169 485414765 635057619 329121875 256115593 706370182 673586351 846901949 276532704 99878336 798751431 828982065 546669056 717243310 951304315 854425428 853598502 546196634 408196431 93690931 261067641 625518462 754329960 379635787 46142731 790033397 446401988 757633037 97816173 226864466 458682955 752039558 431417063 189640482 527297459 270348125 154895111 538519322 822491235 356647746 380534443 924060425 877587088 727046851 763289788 91276263 550557616 963896373 766740459 643908830 813746726 843183860 57404814 144182373 294772698 674142990 426699120 338681581 424635849 119499749 166739184 922409702 420083764 72215831 501606443 733149693 633126905 861415743 887712947 632515323 847286990 591225160 598761064 231547890 65440251 783793277 460684336 307009225 721351888 851982556 958967562 897332292 364620835 9667596 576243060 266366152 597036804 631921136 452931283 992493518 471336984 275548572 992716731 652911165 372552926 785122301 230017800 301222642 435698565 904566120 499810099 4985755 285258757 255965029 518512504 156938209 790124727 965016394 801188408 330017992 347174748 405240244 578778697 298797105 280302203 166500561 847027259 344986180 889979053 535113504 382710419 625913974 791152606 65504929 898293551 516595792 46174496 539484326 595593039 645494021 653902576 261389931 769638486 763082508 248228691 933979034 952730285 686967648 588312697 902501539 937634996 432216483 830802005 986532993 107511456 206260228 460161126 265983157 453096977 881015978 799060440 90701859 827441003 833577476 216599108 473644804 939490629 317658875 530246372 971064914 38420117 164669091 981499509 322533606 165565536 782219222 45259058 858787702 931905588 856381608 836960834 343607105 323919295 760520303 49492049 769940893 614253596 702166500 161529167 850409069 766541998 712263919 54266090 136569863 393552340 338865991 2088127 808461657 989956839 869839754 657075679 636309121 834128897 937424038 774646433 398825485 382772524 179094213 172782978 979076542 383280112 911972419 383668737 242755861 675882344 282307874 889925958 145783448 305285509 21257006 470258593 406007626 75926029 994644070 510564633 507649718 246436008 527166192 954991034 433424946 885938816 128133907 778208721 897203144 488228631 116269232 469550158 274595842 965936072 19468298 652843359 628801318 647558560 555205286 617774802 234991672 462368087 145111956 364393350 279428254 341638411 699492911 315764460 434824845 487456743 966054464 876291416 584872290 970039390 701712917 9116446 256086350 736113692 140111841 125958703 356112708 77093437 845474327 431982154 362491592 441421885 913200985 702499256 102547697 755655247 110726122 678606939 146181428 945356968 188101618 258823200 256723444 810102510 376340718 930046192 585478326 261818815 472690460 680617138 331844867 100506085 648070404 679458751 828479311 189770317 809704173 871767345 878068193 277227271 223393569 161757366 268851607 558923529 390373197 514712108 457160488 212772969 266679339 636524122 625223204 349946838 434242148 764686864 436022527 989152391 674968615 79212634 654261081 867561465 127405903 71503904 917488004 527412776 444965613 425305685 288940677 949901868 199044181 239170374 920973143 197641208 498184267 936882126 997030840 468194347 46738126 950834724 211889964 936967965 112180511 946680344 431364015 785181837 235515237 351670723 451168892 646820630 397900065 242452596 905019113 898295337 99012546 486687167 473075324 187169103 428913845 377720389 883163122 10818302 521713190 571326349 593388841 137378402 405079749 915123549 32596946 369769692 778911206 249054004 100252892 636919225 435583813 532101354 974424177 490478051 473534313 218302938 397739999 593458171 66544623 183034980 339865798 345531167 367359949 659689147 476049280 516830854 326052756 192233097 680935786 671899935 416426418 650433163 6729278 656258012 406110929 665245829 384696874 43291922 893040237 333155726 839466058 72850548 625184690 909150146 170740665 302842235 56888621 339492170 773339544 70850902 743921742 812698344 288261127 139052948 702940478 897128086 514923716 988241393 806069426 740995377 296915095 118603988 474030922 81386424 196892962 19161154 914658435 702749520 495232004 11499273 279133304 230936018 452648319 695100429 23068306 903838342 613818604 362225752 886915380 296389638 343307236 966659648 95795276 607529445 706120802 150766451 300967518 622047929 2420935 492821026 153539762 122090138 537092294 29924690 146059374 552861934 456448850 749790761 635126551 574074247 636335282 231429748 456633838 170628837 324862032 562237989 551817551 264274972 731194339 527195023 573651046 304504354 769601659 13325915 955570901 993432703 85296045 665335371 113999523 64715988 313432492 311211620 693125040 859355590 690698249 194097696 239573594 759633313 182534878 974813412 841924150 877886947 39897 935157503 358806436 752292660 476135587 669537109 982822797 769147629 191411525 11488234 199574789 873045594 464011958 297005461 312545423 711399871 509757080 221303255 142562043 324188557 792914138 39733903 692297449 262822306 999442080 452068894 932414569 171797658 467344466 693350802 451211584 595653750 105972334 445601684 847044953 938789192 411491450 764134511 706426319 393490205 356461001 367367297 180335400 602877219 725953253 598751398 988254222 221920717 125968156 756653039 247115980 854146475 887864874 451288139 353849991 180465675 933835526 26826553 782626375 744407212 866746002 936627738 805394881 75526616 910731390 559458343 897510229 434018477 180173663 400663748 365878033 344943970 201456313 887700082 833567741 353112322 355694919 713440127 654227335 902377492 795426447 452522608 663665316 525270827 338449131 195506703 92715443 984629067 72579704 73935512 322967793 638191084 115719413 799664089 805747271 409753476 957207665 923458395 833710363 825078470 692997177 663905809 289861416 7409381 32591786 96981244 247390078 382262430 583647853 323110396 458595554 240994701 10839400 888826312 920777561 918061498 96298376 76729837 518612946 771604754 621768510 435108668 786157049 14634013 88350850 844911267 898993863 905737523 716129397 934356208 150799910 250079117 51563089 602295119 998610716 103214359 44266272 476735485 97649120 805799750 195391434 723865864 492124460 216786133 239710204 140216922 624395363 194877782 114495023 782188841 85382069 177397831 942371039 183868750 485156396 606010431 145431551 57873753 374381397 843853709 824521251 90884724 382385978 361552372 224685586 341067327 474893047 468095174 204347811 17615482 843562282 164173638 615815373 176778280 893388126 510391910 286617907 683483575 42176738 816592867 911802519 341893121 280779377 267592922 593450487 401373590 768722794 203280783 536182455 589432771 700428157 447748687 440208759 776633117 304285278 636886831 163126275 116005253 741170912 969984624 969891508 475368948 353115272 464977164 811457723 272376154 791344153 698222526 707958369 896207606 179045872 506228103 191642620 722129118 342108159 594778255 616551396 834925217 734016936 338861500 611009308 455579932 63623772 645066644 973573814 46930099 294445390 334885627 224143503 321115335 220309105 362358423 396886723 172398405 905246683 888937950 245705827 547516340 345153684 149349641 172594561 466723984 605637998 159914664 783717019 496359238 973775794 683329524 910057746 677599979 518554416 690939852 351898097 729322998 621189723 35226385 306456532 369875331 711108794 397580270 8223821 325678357 263665429 658047903 795291122 558113314 702193819 884190692 675395710 352419612 91436774 814383832 984621728 244103615 990137167 479601701 762427119 806678296 945061292 785885169 102027028 378713284 249870683 124019018 208523662 140313176 751411756 574109082 465071714 743649251 447142219 662248299 6970022 913496266 231959967 874079468 202366721 767701429 718821508 280225806 802918120 592880367 983743879 67630580 976757132 58551302 296085469 875104471 513345985 136256980 702620537 682622584 880540094 77288545 332868033 14506330 911919081 869646656 553699760 539445501 833945526 780720684 111913417 476048251 149691545 205198173 376472968 873670994 74705806 427396380 518603053 655132325 840513502 246553419 833877010 57595234 775968599 16955488 528447441 414393430 611926958 686717483 263764836 604154124 300317103 69384419 224438467 889750479 757274939 202619346 975874905 703560121 873683774 231149519 10334229 664903268 326965070 963149047 205762985 815680193 75975939 192304252 610553432 184190709 647986639 76082936 650891615 77092602 402512320 587204166 134379984 234310284 111600976 686210734 653070854 276151024 67950006 427388896 142543807 546125563 774979567 69135512 374886831 507462231 991428882 526745532 714785866 850992803 204926563 622600936 267114143 346907271 785627079 442829960 342070328 882900865 237367410 975398061 663469762 653461107 670049887 949614424 273796982 849789217 654027119 246362089 515048656 4323238 198018151 668103555 213179027 844711289 438784978 103865767 135820297 952589537 909534800 404890998 277753697 218093872 936427904 344161589 843072494 103771938 822020112 517052844 947053181 525499850 695458295 412776392 42799099 124594047 157853551 671544024 850586039 34584701 370774486 488549154 392926389 727392659 665774239 933064640 417366001 422554448 994294979 485361666 222128865 964795354 531367945 338975311 936303733 51766258 990805069 659552370 178635484 237037001 256481560 820594549 76562388 253275727 16450121 243988418 711810519 76998609 774810789 49917688 670882324 989643324 754538910 703857699 720783254 327374270 407205214 47841705 316979740 962000801 339218771 421596251 854293695 883627796 461474412 94220733 379253148 287466962 843282472 582082574 582673490 769556085 745437649 679070525 213646048 434963719 382897869 798783478 737435237 657295122 644344059 150917014 614409393 822181048 827275058 223693784 647745203 145054825 48308844 469912124 440578605 745784466 641537399 617034418 195505234 329780944 838448447 234707576 757237023 854724024 339128701 42985394 235809731 287467978 443153763 600334278 20178874 317216129 381538440 24925029 739707639 277153754 307683491 199937216 820464445 400210149 493686797 715687306 623917044 327804892 430763219 872006620 647023942 296238990 522624252 580675664 520664696 839088334 801023072 99224774 498749445 88508975 929131941 821631322 509716434 193984286 155054820 523517081 107395723 500044657 900902827 664351460 655436791 349036925 114632144 434976652 11225018 536330054 635606102 81699625 195802049 961332886 196207444 641865022 478865070 825637015 523448434 359463129 696435851 767750825 348638744 248912857 867224618 157393961 372315421 444820687 812550485 681719824 513013985 684925372 917672616 123317811 573740497 870007950 587927296 349182755 367981614 199436818 437042834 165024887 654912468 240403181 274440745 927276454 289488084 475087249 1412647 391255357 477057924 402301829 203559674 611647003 617864665 231355295 634688740 359850432 584890158 33522871 267376285 308849995 95931150 119482126 559490490 763726203 208628255 87763211 696657195 740260445 769508161 735929265 395894573 677183888 100091697 910892516 445393452 804116003 321549323 109059001 619022348 96118740 842433642 365884979 376415552 111267192 1284111 279796865 498490456 646896931 125748510 396953232 804311349 981078531 267946571 684249137 123648385 127670627 225270950 569684179 905915522 401636476 593634165 962895317 17892971 545344492 786370341 857666699 154731798 851971357 60736576 873778367 711058992 762594562 927117700 925453950 969914919 933359425 769541026 504894697 230419820 194873908 528858922 489558779 203942067 198111534 923292545 348051945 451536590 316632963 662703521 697491399 70106467 181848195 304750750 826579355 152502501 867961414 292183494 181053873 676544518 387511830 860103575 188590401 665906687 168163491 831543444 594780806 874103605 11543816 748533207 238702571 60276406 450345559 446990939 650295116 868218627 26680056 185315359 3986741 475988653 32570030 67870653 37092154 812873950 205264563 491752463 9899816 302036374 464350727 635319036 600621299 313617373 620569706 376430162 84196268 706345601 387833879 85352874 882275582 720867229 384154111 669547000 638459806 792904801 385455839 842514509 309805168 583225446 959447822 970410418 368386363 281596540 526485758 603345265 178031683 241255886 692338560 60409731 325224194 772849638 30481195 603148938 165270268 530195562 897650248 993221231 595173194 124164612 456528372 926612336 603680102 720271394 742143166 303456967 780994144 275285356 562281359 887971748 1312594 358232803 390498568 511771024 474156535 575296069 817958860 648261786 10138264 88372322 959178449 341521053 97372737 271415103 687624652 916554171 777263992 484446279 815239929 477751341 51828499 777011639 461642383 849020625 951835620 785456562 70427028 762082046 150745636 44216142 211867043 431174020 553866402 743500251 489788543 489261796 209858362 495721006 343293137 686179177 428946105 981203982 974400228 331965432 398924301 451324338 362848653 652376427 940923540 997266499 225547812 524621059 994551570 634304804 591483057 77099317 524281714 511040865 901171804 605636431 5401112 695495618 50872375 417697948 643653867 737421998 484043886 791512658 980466421 636596935 394729037 882434756 944666416 970595920 600873336 406869007 442176240 517255252 885921352 575761326 864786366 738757196 554864450 22587198 281291703 99318833 848605677 127196010 178421422 549901956 510272887 919086184 599446108 487859689 481271075 845628115 609279525 699091319 923458250 547052986 863806581 810750222 961844368 239311910 309401448 399709585 655827307 840411799 858248128 488578552 478052488 229172654 446071165 73148171 354905957 603211589 134242792 93933809 398078810 956492078 606031950 348729693 428476686 7137685 797436742 204476802 869159131 297644829 293306124 64517230 719508159 916317964 740086076 914886901 348955576 521423537 600935533 978141623 338256886 694025981 303898492 417491365 391074490 228708561 29728164 752041649 188105167 373954218 318949007 688407255 225928217 334364136 663690244 105767517 896872232 558951626 84220206 422671392 876799299 249517583 1932867 143286050 939871117 280396568 632007571 135951581 820496592 610254057 546063183 193242213 463337776 208371936 535580232 705148348 177246900 915562983 237269979 219307423 376728924 929124595 614817659 546345897 77445641 202179552 714745799 116814122 627328347 681102572 744790260 617202974 782530714 414080803 147146316 222239952 334984300 815241236 737009731 975161511 244252409 553923350 435569496 42382365 206626739 167156739 393585387 361806896 2700205 135354472 12227938 921643502 380144724 869830470 993283187 796039346 52320107 65813445 139663074 544700074 563080308 832213385 575383684 578631270 658538487 195049875 914583018 507523704 453613559 710994063 157480838 202811823 111787116 193233790 747320923 467372949 868093956 8820808 25725084 415312619 182669701 126978090 280312967 864660473 106929420 16123636 100142127 829540601 110169887 332745509 126152106 240269892 963493656 417873607 598697904 192437508 683334135 999640201 613101009 549670665 817303907 858125547 364196032 387562101 706285049 463420900 10307851 835300607 917520015 385652978 401457008 409767826 57372285 968604655 375732936 70943818 185871496 443815535 321966008 699851770 225429428 187515664 431924110 538258723 276287524 481840661 857384570 72866056 772880515 834766469 855013814 227386518 360220683 408678939 981846983 949351184 141701842 251634406 732118896 629422146 528562118 446082993 427244981 938857904 792664498 770250250 955417819 725049667 235206031 980426702 265279061 597338698 196763151 40927797 916271782 673046823 865226091 745050906 161355665 703273828 217799663 578650262 946147768 290689145 740001911 235308679 875498900 379782551 236711896 524903541 921286954 651701858 969958833 421989865 729185420 700738776 614484143 945353260 241795654 902353031 150728524 276568172 699892271 559477112 893869822 381120522 51057074 379353448 465403006 762653042 504394932 921082042 325294834 541975648 21598183 154394045 639531776 30832027 342055447 428945454 683223703 608713922 374491205 535068142 170535618 889108740 602304796 732387910 10157225 97406345 932975364 486725827 74832323 428929259 27272509 834035375 527590569 154981790 882269374 360167295 632560604 501732375 735048592 997036004 668755978 904782789 696519840 669025157 478261061 669128497 453449223 885629425 626421708 320476833 313968197 369593515 868948753 557418480 251105671 105840132 405947646 565080032 602830918 316859643 153977338 50897923 899028521 299282035 389732330 854229317 367110060 570356485 544677670 111588186 228402262 608915920 551108967 884053508 419241824 5925895 827178161 855069121 841456464 984937157 374493905 721419580 205833854 957549729 615683689 43292520 877033087 111139047 945557285 286934037 565533466 773775985 680699359 356070975 398133369 142746862 833867278 672050546 744285174 386068978 376491347 600454288 171682421 696003977 291542921 20525441 340737550 258382833 951497719 678868751 863130846 866832676 80855338 524483186 337809349 137262318 797991801 188188534 241753321 855859602 696162183 312600696 294639410 147561813 251007251 690415041 429309924 684092455 60440318 881661514 850738046 464591853 142388231 937943043 818347938 626949530 619841218 123619409 440234525 730385201 837474369 905482508 624107540 599255408 709020167 685449996 84235076 628667948 302398698 601258872 129122936 481354532 755346312 666091909 776356884 37835280 245013575 518033596 879457215 977238251 846337541 704831495 684818209 368987890 197739337 64560699 357986554 254170414 967806066 959179107 451801950 445561156 207903864 722922072 662426982 931643892 691849590 585183097 676885354 995855378 413614340 982636574 933528528 310790198 652396032 503106773 772276025 999914998 931172776 498741754 578702041 993724593 162647724 815100367 744746506 577505704 106123306 71598457 684206662 895981837 716578596 486007996 964360129 10186461 446648882 456126971 721208141 388967504 51080568 93730907 472026971 44869748 245573830 371737646 180197874 207526232 691928218 618067366 672199544 657356531 472418269 856185851 571906861 633402161 160141466 900252945 482906500 438295100 657426348 297763533 324300442 131584770 251382323 853678245 893030856 691927126 799535473 209993648 380349490 855241376 873741572 731997899 141320328 465925567 853507807 43034612 758782684 356386049 711899100 421364969 142765627 846028164 981511262 120813177 833319962 534797723 183962448 18127989 338870459 536834397 280267989 650108892 299703534 139556080 33700659 637715120 864361448 354508070 451725186 971962903 874339326 698425829 492520820 272878094 32935848 762623887 922567703 282165208 759571713 581393658 687802114 197621013 188819047 551551889 334662886 323822545 410258244 805316296 798383471 844703091 949565788 282995823 430548367 244342859 916276995 569778652 509937557 236524444 516878918 165717758 65151960 948189219 377652755 273145107 105534969 740394351 492984081 290975366 271180098 353086000 523543303 142637865 785379490 103553360 878236671 637385772 544339201 836141917 453649962 337849398 932016235 259592584 296893808 539774076 341512672 649734280 343997830 50818216 151306818 733334912 362412529 232115854 456744587 88419273 774151633 24120944 896721063 660571570 925715087 815456931 394016863 961182988 851682996 56358585 814306366 652091759 806524496 961551385 445072998 452364386 405184437 203866485 380653771 942287905 768069222 455275879 995135508 857667682 170356773 767438648 109846746 645161952 854800888 837973399 777234976 845058900 588980929 27142529 597379937 87234860 832429723 762946651 166725681 464190697 614084251 73300054 138271067 418955993 985925676 292584477 844847689 528106858 210588880 762120564 447099497 291572418 944970756 762221105 352723391 851219254 296058161 358814994 319748193 452910635 512222816 432401319 164864048 608515981 507692131 588180164 233861009 876448317 305419138 927106081 404271729 195626066 258621108 583008533 960460026 970853696 770496309 777699852 769629840 727847449 778980840 348039828 595991226 345275984 781637133 117366299 150635719 410953616 885814867 243644465 558243156 407424968 978401012 235493927 227750788 168583121 451840115 805335277 35677516 61799321 98403713 315835026 733672100 650638352 15401346 925069395 437883338 523682246 327404562 106985647 970065602 552401412 613244357 129226673 678556510 112093645 23924935 455073447 255895389 193105523 792550910 389253167 441540633 553513757 538080552 442118026 794693564 657583409 3960304 146139998 105262293 565200313 491128697 850895693 135990874 48024848 275978370 413913586 934326077 369801598 578800919 920838917 623560459 315404273 448415397 762666383 147379505 461234520 323250155 969335993 535763855 467285189 107320438 157961511 795112206 796931817 865414354 157961255 116303826 655706466 62711967 394672745 892693948 124573542 869092461 649010736 920146835 450591774 522952822 117725905 810657199 172420814 614570859 723111205 206602698 288583900 200244862 299514207 182036415 162497177 104499542 103083851 851654497 203575852 181405231 400447326 210519358 22805247 553520829 277976954 572943682 401597819 681252131 155702175 733654674 233394068 93562039 576620144 524854809 310645562 493002855 265480307 946568737 493746453 994124434 15395799 423002899 266016782 356165101 453747916 469145516 571701250 415925518 221990289 573917788 607629794 60189127 843449462 137406086 910758717 283351975 519357592 52305008 384548254 448278971 127587319 357715443 433465794 196009444 933253071 556600387 466153583 303519029 602006531 76510989 413839029 908403699 637562948 609543690 174838962 303542162 346571733 839239988 274070675 997055841 522257135 891604936 751481252 826279338 926069961 925252417 8763749 995760249 769247933 770381136 242112775 683337040 972928787 254462088 250065172 507001579 792427668 810925703 210214044 857404639 722625052 198353471 138204415 99895028 766083288 207827451 535214889 643627728 956273998 985954730 894862415 566573187 454321836 29829276 728835412 352055521 447401167 140505369 723615716 307632055 935653161 600556867 179607730 759685788 858961514 276808430 350179534 254280230 1401132 972144385 175703908 933204445 911157925 887680979 873483905 293188937 60929583 700695179 355627325 902537497 546097155 362805315 776879922 981858607 157661694 320291587 287734562 582883037 79378625 378999821 527004361 14304915 391620754 830179086 100347371 830134988 617293952 59301939 19902610 383584850 646622598 120475393 345844852 742824773 453570725 366892608 56723566 654527993 716606884 168386314 91235317 375483719 114861000 251213143 151695736 917516839 218731216 391475800 882394235 360261315 229903403 456326647 91105550 599633260 937252285 240677778 577968668 122946586 296368454 476732964 184982184 138399886 590428153 839951645 24780292 494040766 947824763 521988104 438092662 643669799 734452030 815771207 410901329 278908895 864140116 883153544 695374187 560013025 153778732 843622338 64684572 721153056 446307073 222336722 292418344 228769093 580004401 640119152 227299702 731456171 209394680 484120375 457561136 264817536 388761289 940222865 856255234 691445601 350186347 870175158 881538009 464247136 65116645 1660930 769692741 931919178 311055963 660546031 468463533 208223179 964580828 185367482 795618247 271487162 863265288 113500431 600504803 155773339 116728663 683458160 936686126 527814304 843785072 473358245 752600837 441783409 862440263 65004174 264075100 46554708 837621968 454777061 146138559 946256259 970105454 508001581 556199581 729550689 846407682 323076695 405602516 767243998 361865449 255533331 93788915 951174176 592920715 772478427 734874819 815526740 588517645 823399816 250805276 627015158 248257045 6728381 14464656 676758263 960924231 726830176 130190275 140324033 109360823 559860174 626331698 428110972 579134910 756897224 891055576 353263581 853615092 481319959 255121080 948298062 594763228 399902837 87638167 294213590 818437708 926088190 862804175 47519484 63765996 778092419 29696487 564455755 489284446 583888396 300715761 88701631 198899461 48758584 999991089 708806820 726828693 603746945 498822576 661460932 842586504 281063306 213726067 216348866 635611028 428444685 888540984 140300362 542276547 742381555 631627287 349926708 691780304 92038795 290338595 864996725 315264953 801407657 473666622 488225994 614203237 733783733 198627601 233833688 387657571 522835397 224525320 706803669 916776723 799158699 334739859 427294872 195733327 30773186 186935452 480071337 414480821 789806039 641009430 171858111 202199563 682598760 164277307 695529654 97662244 88660918 832901930 202735222 801351573 32679906 914180465 203618440 210136302 997830814 113193304 51447192 95918612 35023045 911774526 275964746 782175789 976990160 679180323 587782580 876444151 58164014 759752828 646047357 545953458 291427763 49396510 846044124 56126552 241872620 825931885 685870706 359398994 291432062 519816910 117592184 255915962 92354366 427904891 398942241 46471019 241669009 36528535 776910279 733466183 505544537 390263007 745934425 594215165 533251215 634142227 136345382 632650695 594454665 206812755 937702932 782255773 713261165 386682962 739325761 395401549 677728140 450521935 497142669 126560003 376862167 405125504 272122286 403150310 661153427 474065916 378849624 917513525 413580884 600921451 259073066 27832921 841909598 96537635 536742657 73236699 153229023 88243504 109835213 905778707 339871502 102891246 579471054 64143146 381954823 470382045 525292716 655434624 707082263 962814969 126719629 366398573 235716326 21869875 831055133 86423758 297538770 804754702 208781317 188914800 493198163 367082328 897513609 119265219 286493554 941012308 954859777 233020938 966294491 308000555 535756534 216923906 424011412 734552819 374403854 226903452 83096221 155362424 56838883 594572267 177675732 205642193 217087892 613574760 131983535 454106295 839474276 113853461 643599526 244256362 264949902 599852012 918418714 564302384 825921475 375589008 940625621 391060322 538266996 197590070 976510093 517452444 379956578 32836809 316459119 245408649 549432200 14540456 474093984 561935906 996493851 722261169 485453622 76909215 310550855 232680664 827509602 608392550 802055615 350987664 941672756 946068961 690488385 469961215 457136805 738228262 496757223 111938539 584151114 11948275 343366255 1530449 201019166 413622868 969815298 673843805 445136932 234955063 969695685 859898550 460329241 669826130 623746073 20934283 696865961 428212075 463244553 387543083 406330545 317674966 131859430 217396660 887775509 436918499 327679830 57643563 425034013 585014516 578330097 905648124 990553062 476669838 474663629 810565953 875793556 837078444 993122692 27321665 222043889 960791186 406899621 815814231 172056808 417426441 317256351 213814244 557339375 521290556 993136292 440284037 760849122 628162958 444090129 555409018 837476932 738208849 996363999 841188843 241331703 115256636 721171509 773217654 15595789 185999373 214157365 493225104 740877246 329810520 893591588 303549186 129554795 533324773 489334700 806978593 789498717 791095940 434388059 946382711 12488422 290651571 622324602 446281681 616137157 65082997 476922704 212989553 129063010 161644474 638767841 902244235 142216133 519960677 661623595 233460651 854718482 660615581 416837538 125982821 171097598 308643512 447235416 892293420 313717129 941145053 520675202 329058187 838478776 810346188 265476277 947007934 251689944 642121140 441030003 976373936 875033970 838465296 64021085 995790750 332509988 900056173 145242727 644956237 342134315 236999564 482556561 587689658 805739898 19452448 738954001 886437076 713438296 289787823 337299328 812516827 842837178 509733655 49342459 934397777 4593381 805768138 391158807 201315786 838723091 771631011 818016960 762285990 806980844 673801839 69764697 538915064 424883610 598620571 689686176 659777589 486980117 431202355 323941952 605959762 810374214 56961610 197872813 967936283 782541406 412655142 30790596 373800448 373789303 122404599 668042467 326145993 794000974 178443131 511550612 994221640 915484725 871762175 179523110 751895090 389103314 455565205 989794950 734336726 658256046 833058646 511485547 24243806 918168635 903625456 392099814 28925351 895184075 402314356 966493914 712466945 898679343 314100013 326811364 562931164 312973951 509139446 525585956 811155906 933193189 62527707 791479263 636735866 352754159 156901920 584941679 48933531 405895047 228253832 283878282 337693753 296016791 683444708 562064770 655285666 147731394 665841424 320252014 427537800 706839292 52512196 151399751 391483693 430675578 498041553 304614364 623901326 849853191 907381132 306213527 297956984 19776056 785066460 831747526 700722142 441302618 561568737 261843201 558791770 897836891 413092262 247493213 548647476 346170077 219273773 476638017 802613607 603908304 631331050 611471043 7470729 183479951 902519840 200142058 648564649 371877280 180356319 444218975 820311913 39295047 994253062 983629226 85499309 582000185 380661495 172828709 177122805 410547097 760067717 714408349 380074717 183014244 599906924 487724317 225972983 487865419 669512062 695603309 54501072 617655059 598690818 667761606 633230937 831839986 528651047 469528783 274662211 37179926 17979834 823952707 581661601 90593424 677118536 316558490 666601539 198840459 819905404 384133085 197308875 960560793 241636741 638177730 273967838 471970792 6388532 896768528 765479646 121712301 997601207 635317837 297578018 57064964 485898688 217734801 48050280 539776531 14061417 283466613 508092686 891697163 202535126 325341988 198023762 859496047 315800573 915029897 13784934 174957749 738946766 505807044 681362140 888535525 526357376 730304107 18330376 339226348 897982468 581399339 478725026 128192173 606116928 516211641 669400793 655319188 417090350 119076961 838698681 577125372 822951508 796101237 631681667 365025496 920636201 716539582 263164313 287594714 376422201 957392193 853556918 534494436 799759695 945608538 448104720 707562025 908504397 137304854 165139251 297994059 290751589 855636195 438063477 777124673 985944419 549155308 888110329 210066730 284839888 364410287 190451268 775693229 532090283 832070002 426176101 973680045 2719857 97206049 888833594 665021721 564435069 336285060 344415120 700525254 521533381 802860900 445114041 697084720 46063586 856995517 977373590 779746545 815699509 9561748 92672319 464653001 137680462 165877899 166119054 925660988 40351423 677740921 126321230 125207695 693588982 533910253 915636447 322666854 606508549 253675502 615162960 544491081 199044600 509655378 723902580 171716144 414070091 388147925 131660555 529161675 893664527 170401029 858606424 221988512 574475062 228649875 354124365 625917464 931772692 303945186 766475764 580692042 349907312 827355102 45371060 376284553 68300964 427093754 666777297 162811700 640966248 528935270 268745317 754110739 144825680 638697187 56728705 580618092 132197456 383545750 392422699 891238381 856533464 722860301 997837516 651821977 266863860 692948618 162783961 149847891 309586436 476965954 50253567 907986981 153927860 944910501 546431512 740559912 534094094 505667560 132586443 611512907 764455291 631050868 860439463 660188988 267368114 129587934 25266073 974961754 446224471 227723139 82435306 110195739 940955590 879927654 329216005 976799454 948922171 769311887 34639173 526637057 799680926 811546110 550658107 907988622 900728209 699793053 637252695 290668180 741343136 167779074 995917391 233048460 62128961 568884202 50678154 842438337 517223720 855626161 647777097 676640217 419558609 818553385 243071514 942894267 670991070 826230290 103814840 12477749 584672097 310097018 425029668 471234775 634450603 733314665 575592043 396611017 57643835 321806081 562828757 347855388 13515352 364281960 786341263 125357599 714617267 350861846 199353368 379920104 890428919 742962975 92085171 798145820 227342356 62047900 974781731 660426236 600347398 624168249 717924191 197589818 146492609 861385127 300632525 597199229 744312418 348557633 952097751 868349986 952928055 262651823 368618775 938152482 219644295 65445925 723694868 635298855 219695440 68543883 988069626 902225425 660703370 687630034 43541917 737655753 90703356 579243663 645576018 30009869 278795673 805653894 908461891 743785338 123803018 595800174 188240590 468145859 862467632 560813065 288513355 636675174 42641856 556167100 486315468 798349020 155182642 380772844 342523233 823703489 156234411 868624552 300832029 259620925 652782149 137100697 662737880 30684455 93432117 849215823 268655848 278137608 627651610 839023920 744850857 468057660 847217064 899978242 62949154 84194221 818545784 463321507 605347914 916108346 610631374 988675920 708107520 421075534 780824531 539798957 468654598 495795871 247158409 583989416 983346323 967692858 48530159 567390090 63956627 488355886 751071228 930021547 918200235 46274828 64852023 282480829 961555975 55583329 642167451 465058963 94692415 539479018 394971398 984508591 222566797 735514744 606233668 359948300 706793713 303383122 483055479 932728647 377580782 846494741 551443276 664071997 212017812 183906122 977554375 821447377 863223584 685823400 663817825 562054731 405057210 398818929 908077756 990416560 869558526 485597834 89965117 77640150 437394134 505238422 354371253 838010828 120668953 912479157 482270617 339259443 122770753 351697681 353217652 179911952 604639145 512737632 126873025 42155237 154442255 102122574 965303642 838424416 215272548 934347739 505295864 463857222 897771820 99935824 164445364 743989588 535171986 561632457 341591844 235189897 877342036 317802169 724905418 448772773 462897286 885267427 844080040 604604009 528228966 741335206 941398369 48603277 970868852 189067106 81056634 987540381 113163304 124126288 571581253 137458846 242441481 11547360 760602304 19417655 860262116 51723468 622712958 668971601 518185383 499416787 236891240 652664976 346364902 567793027 972133431 316811323 428354767 612620532 977938825 657097019 125915783 416776017 840540801 90108569 762690530 796415468 246711618 573472766 757428557 404409586 326992188 493175394 637606315 755149291 853510441 159405774 701834952 198448012 717975730 258848579 874490754 882871881 365699633 397825984 463480238 182981328 46492203 865783360 502145638 658866091 302060585 658327743 259214081 502526579 644991386 456746633 862376851 536661880 59728616 845085435 278457606 786753624 494861664 939991973 455907737 444156517 266474177 51245184 249566321 616979550 837273562 117087352 975068035 476599713 515210583 223056212 766006471 585669047 959003881 266562083 541243477 173338174 652856219 463003201 639185026 806642299 385972557 851654884 683505087 579350953 810482238 510919959 761396295 280339189 348623740 676169278 348926763 550131765 365551231 135165684 18962994 386975486 250615564 930986339 121981097 442869217 825278262 781357514 900318525 66322291 739465954 338830116 891242096 229197527 669264981 158032280 220404575 162493417 397999654 749490785 822231040 491272955 331886998 608608007 506526929 645885504 234308774 530623603 746738158 21400468 480775508 599439667 523679501 34029650 289398861 11011011 969276091 574087993 217621843 624325953 543466785 962005198 855858915 889088598 642060505 177244510 218436630 94036601 642035981 664243003 14439917 288865477 421230913 924346196 293947888 885682766 156545944 947699963 107285830 818661190 310251188 252270486 130685973 887328785 406513586 776028379 107666883 866595337 287481096 956255242 858988300 166985904 889542153 710453543 430328544 173764226 675048544 761442650 133980753 137820149 942235617 816154091 820788077 572450906 571331443 260109596 40554905 916757262 88197695 664451605 870929150 931734277 127177754 257254764 566589846 890604803 668510351 361155657 890868041 575937589 613727826 9194419 859490167 524224266 100101082 194188375 235561460 916820388 357051433 368197110 264132703 910077300 731319176 80060015 789767997 945178148 129937784 973098585 347535232 236209627 253411041 537187939 468934883 728576170 339319267 274147299 848493797 416961987 6364720 627426630 74769839 640078669 915883829 875991629 407919926 415715561 248237850 107653010 749350317 155236090 304003560 508120551 464991790 82251593 590029054 332032332 484673611 271235641 304232399 432971626 350526917 280773734 561289635 577174712 921873492 362384851 316259942 374566528 528287748 246409710 841791356 618227516 501960029 261423812 705608067 420311028 576514740 836419893 646218943 995768978 722130029 97578498 410386392 310701036 232540957 581287749 26318464 221639692 20355560 254161981 33559075 517118136 196161358 675135270 495228887 708569204 666954701 555029600 264197190 668141779 97583766 364442076 910919904 650973059 738014618 625920786 288407723 239822037 202197639 349560509 385411282 616737015 520026106 865501137 964420032 819374356 591887374 710181558 124872747 652977212 594069636 673442495 322918646 592374116 661023351 551896497 430774260 731866035 160780964 874651272 537361797 80533593 569031568 887340649 329483591 410274226 678678656 533483529 223471262 51422879 935398843 193304189 546433190 753579004 617818350 609359259 303011076 382636037 173666086 872025283 181356642 274301814 377529533 779571943 492007019 349454872 590988359 903018370 745786521 280969991 989599743 495361135 978202370 205701170 693411983 828640682 506111991 455125500 951832193 464334932 638064082 854876909 187430952 578047863 366469282 917224482 524998687 290594965 923887906 525236304 111347797 40939205 534399320 868647098 122932901 179108213 25940213 978548539 665041245 61251005 592826533 497333916 219361689 136323732 834541589 627096071 743643370 610128217 520982650 716996092 89021016 484641533 609692229 559816651 448845949 103906318 618033526 418303980 144676847 171683704 133803830 875692198 920105492 992677217 272070671 312646975 295313452 544750989 843264454 553949808 782540906 119263703 790834456 740465360 9134059 987420942 551889042 296673956 540623084 826466706 486292656 395916753 509796675 188894431 919840754 270318240 657728351 615740460 715829118 431283324 920162290 270630455 14878911 273949736 293671688 983787401 608962879 437227456 973791337 452559497 669532682 561607357 335863921 739845737 675383497 143283804 826268337 488121370 188781114 845036187 306554007 344954532 116381741 732729574 792231617 714141545 781211342 802149062 333777320 628307978 924078878 988675581 447077823 976021030 124703123 197466913 93168686 57362099 311653491 195999597 891595679 100141483 688942958 185694411 848495320 157900491 811968807 277270222 535275801 36174337 596698761 122304143 911838530 199550670 162027648 25015896 137500228 667913948 870770375 959018410 502530458 707855627 955541350 302083043 350892384 514464004 199230641 400719369 219211333 317676560 499069953 678177484 39503284 395827670 27523622 418447920 502658496 693978021 324632687 952852955 977759899 151643441 160732496 546556860 636675098 395680521 392703914 619466960 387681694 360538759 403428643 813313643 822174106 4726516 302746162 226570406 716187331 323110329 564876233 859987130 48470789 693647851 791526498 765646527 329383093 572300047 978658493 440937019 755937366 250085861 551632897 68743319 728747908 903644798 546576967 247129914 634043171 363368266 46000396 120739135 934611319 638079017 833009719 814062610 465455423 670439596 52464432 6274908 325493215 777319525 695495808 892697057 883127003 10109703 678642658 304212668 896145640 62335895 655717099 798855849 582747769 143424670 313703917 703522841 191105985 399475651 408435653 125904894 866734362 88020073 549730139 775363162 594553468 731086654 630639209 740265366 190189428 90843338 168086555 469459662 102704503 85729625 851809261 352323197 739989105 765171183 536171773 415939278 763520491 663250124 810936284 738599594 963863388 535695401 244125914 693257390 837345360 41936621 230308556 521408808 469499534 415398952 281238906 13204431 102875642 352563481 915939022 483146158 345401733 679623776 354785527 228113886 605672763 172331357 14876602 600766297 571813542 966756775 336506590 903944256 635222007 536796380 994742843 613796936 787484087 428201106 865382521 621725617 210221962 432027132 158107327 157836321 456411448 638442785 719337563 64663543 904800603 358994391 487644504 190037570 516186550 790915655 735355191 494083978 306231770 454679657 352429166 610639162 201410295 652833623 651171652 916690731 431504617 65444923 585526075 794832535 154656799 766715332 560110130 5089584 153418988 702957749 876805290 474768625 661821979 319380932 660282529 300646533 395859951 453804533 534720274 13085613 262709488 553362955 539205915 477819694 326568307 627393478 520455673 825274964 681121395 72953102 186861160 42459931 204091534 274531821 196344328 310293062 676716018 576864885 281206398 689600417 711717152 160725616 782318324 305612125 420473299 982719007 264524676 45566523 185330001 310136328 19290365 41435626 471516653 345379197 424230555 294136800 702262249 216567859 334184861 563788690 203445720 408932823 651556762 405518927 746990793 741315326 874673712 497183175 523479 444423981 842733461 365304921 24250712 318662808 115117328 12211566 966672257 740748489 405882224 145969285 315975931 564296438 721584403 823523308 248488926 147420000 584106415 818008355 667143950 584376889 779055102 414927253 927632908 292594902 421582102 752523402 399136926 794594784 40328143 100461044 226615484 382538270 445935972 888613925 326152330 919342793 918771727 861432664 376690523 613983074 119787633 523073776 74016012 138294100 242355922 232722656 911572641 155805491 431548977 298238050 32870707 47552542 609308558 402787642 229814934 535490726 8321246 935308301 389307599 903120642 707993852 493561417 377711774 316957714 737926647 750652199 204701638 206920249 324177716 203340932 904428358 632454359 875188653 531798872 530006541 726200237 106288366 786911860 906074758 850132192 689921657 181659757 378897569 728919182 664495407 961282320 788957641 40915926 437946206 983204831 429882628 909621744 31621788 962749624 291466276 633997657 595051727 390096815 648784763 195693339 533784925 310008528 268878724 99440589 365424425 389026886 637787797 403501479 490579852 522423052 282534802 524419743 730188693 59951408 687910144 490264656 160641905 871144635 119681062 497380801 738166427 301704217 931904188 14345816 766279856 544932033 663920508 222805385 15698319 518172257 968085185 468612313 344482001 713627162 125992066 136249961 587739142 956160452 520269365 743203199 572601576 30759473 709682917 494258248 268349519 273463454 787563928 791471451 925859854 347405973 79871432 227851107 300353459 526122809 619594017 216688515 996358494 759035022 141832846 621211552 856438582 104531995 786739565 267223307 201207310 989293664 990694253 740595340 634839129 663620531 844554482 524673030 921810119 881653904 873577246 736439379 897265522 688107898 72543919 773132618 988103098 607008486 143045936 608332635 47997179 516640476 805496606 758284132 610428447 823309685 592749970 171692255 135069422 422889624 319077983 121498204 376123443 696186981 260052797 884915118 145658974 73194118 881305942 714016126 357841758 826518285 847402536 348369214 132077989 907976940 893925670 645664169 59692026 501128233 160270135 60311003 352785275 90488402 879309839 355904226 193683102 610923049 462887655 493248923 428939372 957990767 252073327 243255073 516247080 764506782 607084019 660330640 577391031 390590979 663715588 400676043 762079918 355589000 588262836 525078924 133517884 258368227 415421674 431789538 469620562 682902606 579058283 288193713 509296527 204405860 945320378 464851899 521465620 705438195 304911809 540540751 823107787 996393302 297628330 904420088 400379551 219101540 192871852 794403514 505159742 511487386 713109908 65720197 22300654 291163792 615511157 86443770 534924404 790662584 330110168 798899124 340932858 263278525 230016090 688919974 406177555 801592564 677322293 572019223 792427162 750914700 48868636 289979075 811475545 369241474 686950052 795546918 983937168 847622560 585803728 568516416 163315391 76586379 744380594 931822375 793069483 115058528 200702847 49451515 537136496 259237822 107196356 170054771 610625225 37574710 171637303 211935516 814430533 299658727 87151287 895256166 274899369 428740538 683419748 256635497 529710435 586464869 364416421 127687215 935137456 471819223 100216958 599257509 763142980 354562794 116986371 394786969 999048670 69694456 839371013 11856697 231313396 37202689 935276964 106139198 403578004 767023619 590069260 576209902 971881468 159845583 898207922 227796591 832527082 896868324 824069098 709426458 727794590 409791469 609721014 848351666 261754755 179132302 973410526 636291302 582015881 557350196 733654058 343808133 514622250 752841572 654117621 499619227 26243194 945391060 475048193 550059273 597528529 19239887 46513045 972733089 372729125 50228761 555410958 624267075 762484377 762016575 502715497 614600653 273541833 263415751 644686809 764584646 634562792 452317051 128844714 779758430 289437848 953045831 741032800 987048168 629475623 593136957 393279978 459648138 399776922 616786463 769394123 410423528 617763593 708753945 199617923 290645668 119116666 697777093 529895633 725908051 758534490 395413965 321578730 471450364 654446415 921219206 684886770 771403595 792363178 738946380 363776696 293775818 169111344 87193303 228738749 518863092 480678001 959882361 388406947 329223158 569938795 525344072 600367979 349392893 864179688 718605896 533871047 256582106 204854513 736265948 849989509 27547421 230940519 233522781 84669988 110328409 595189966 93405715 970591395 251325621 207202338 701922041 360991165 575195272 591881770 3064694 380990028 780977684 262073344 148668589 598408068 900466733 52169040 562803477 761913380 579002097 891661372 78301855 310745165 579821222 331549774 501840295 133153604 834868891 787881534 491040916 885404593 60013309 586339786 635101380 965349127 218962843 86747486 581208744 244923178 335021840 795249341 455352671 252678337 686651492 973559791 409354655 568942467 259275654 521006916 3227496 738496111 888075023 439375941 36763817 773693143 122672961 656023513 22964041 13006692 852543719 76693525 861713645 206247487 476970493 254346802 494160546 671153179 232881554 504397965 566955308 20370459 139402200 680646069 342301808 268392109 450619529 845924240 757436092 148220209 360181022 587103482 374954552 178545990 641888025 56316080 871543307 577722888 469592061 873548166 996152515 440339003 874144139 798204011 227490762 640969482 130793495 451091311 370942590 966857642 678604392 162756635 982131959 616443927 130585459 955528180 938558950 738271027 280891679 790276552 804614097 485722130 251340571 855774059 506967267 390544296 986042361 654485606 397516780 829344871 59560739 154905386 734683244 883504743 957985090 984155302 513397183 936502485 301623632 529344050 397561759 985037529 659086663 476760143 906185013 378573175 757577657 393711932 25995469 516744232 827296369 960132942 474888050 994156780 868527818 959080680 480547027 738521266 550102762 375050159 208393077 786742538 202411068 533532691 408037079 124344150 700223563 672600880 649893867 50003533 776408020 428415104 178079535 914688875 835429239 190233437 505362031 400058769 138739416 202094663 881554864 165639997 12338307 94120864 295170373 208218376 252244510 193085168 137062192 909455985 812151932 325514733 653961906 933227152 24591268 695673023 909258212 625403412 600323822 394086949 368156671 792135040 80788754 434145747 762598740 576058644 570274935 788338073 871794618 228430874 355188694 790657257 973294792 168648130 351060475 888746359 392860365 877291344 967284865 458129768 674493793 76463261 560274493 543382884 25198160 422361093 145747566 177938250 989810943 557302389 740109391 375042016 151812811 964803615 548771327 968511377 401258760 558061592 301989304 500637628 401207607 238330561 497849736 324915379 866248984 798321057 943054328 365658179 668764217 334940524 310764164 297842716 181609560 984543677 965334378 123048034 870636756 931138287 245501351 199030826 277762263 103240341 99741840 535457431 377419286 312518376 577583018 783728787 623328793 533961134 482765654 693614018 803023183 56977681 435088322 787303531 508714200 59349035 127088735 513536197 622364916 681419446 327706083 851468232 767942392 832524091 712987901 453651083 422351919 779671133 474368422 623030874 389150666 784475247 542233958 488662388 380116821 535151403 11773378 105038679 27463997 610607266 115200519 682807320 20655114 971445507 906362341 312385184 907531364 639186417 211797794 667542012 325451948 653708654 449083768 975563130 771721799 132787402 253954413 7209805 973011499 884018241 882632229 678686961 816648895 589545114 526027454 297549743 913021535 990171487 362029678 360357876 215073825 679325938 32733069 108751969 169023176 164658077 79568039 288529206 746800206 49019123 244119490 579318921 773459023 306972550 900328216 572215960 782142617 260058262 836013542 728117998 676458337 72584975 94509891 641216130 280311258 636624722 267516157 70482016 874229993 162307270 554761965 948742434 420184716 513833739 36277604 781008068 12772413 390892812 823257753 233711025 398392686 821335691 457460150 775981527 306904264 779822012 813640603 782971795 796386538 575866150 352356807 738861168 393801335 86746196 479746645 498417897 577007586 104172654 453220655 584938547 561000382 408501844 4625041 873425438 497136961 155308094 161349827 846275699 739289275 857950318 687551930 772514501 194760073 166405316 193024928 141850616 961281223 580316841 57151855 985189840 604160569 13815191 932660048 982149890 959450686 642000215 493147205 959228092 41365587 3234187 103991906 897401336 377418513 837919093 573565293 788189695 224891722 565075088 358132213 235658138 692177376 910621994 424514637 913153931 339033949 570650010 90758221 182345997 358331875 578799611 793857714 131071119 615753422 488626357 498901683 202507399 556458077 513481677 393960520 481878572 580752812 32789763 423945499 533791137 679782289 85616462 95341118 380338997 213098414 356657240 353101105 847809957 154180629 918802071 786467247 927610216 984080243 765750711 831123993 965387835 76596432 841982679 32296497 419243074 668126305 106856584 793861249 307244798 443512509 517207100 549922514 832052558 562419163 13502617 946664604 815087679 935460420 604653775 654240761 973740783 516645219 690240979 93963393 872309487 952375378 643159793 295262340 969899161 847726221 361761131 541566668 311977475 395761711 774471430 624982645 519074077 457439077 199688479 597325957 111300049 495134573 253136285 367306899 527400510 301620489 209688833 489314585 25790023 879303709 950859424 521620347 758101417 7667483 798385426 483328840 364064618 258587678 645186938 521938406 441323083 682182260 673779692 62453556 834440322 479694557 157211605 652259562 545882563 782738114 396299698 566165565 388417998 951211454 381913763 450744182 146677875 669192828 640155524 785384874 792562953 781362461 739582028 548581562 549419476 435292231 440910524 915334607 28158664 949263148 667677749 258199132 603622439 943210753 439352491 548487972 229908504 432747890 121196257 142789571 81514132 904256533 882740324 362772512 26742589 724346183 221943134 185694680 15320581 958860211 695658430 241660692 370080205 700624783 478480212 590306885 212656412 592072912 750617426 450788173 708857164 3642995 390623278 327257261 133798367 248083693 2414197 903947148 816705842 38275500 643428183 31256919 599443942 733382843 870474890 501721241 554915380 496283350 922066737 802832092 238024398 980949495 637528587 207751063 812869271 583812100 95377579 777670703 761685956 394794113 405147302 480331400 834300502 432565015 296299830 727506196 547660560 594101082 78527043 528194411 46634010 210746598 928725647 535088301 628150335 206059857 975298772 335104265 302033844 693340283 800400082 43500130 914079434 177365719 486442285 235375260 871030094 726018722 451063417 918397977 877220420 140848279 973200412 717661967 532162636 817951811 754494317 757231523 475147091 656372121 671958842 232163450 321359797 389160586 970112961 908783231 951701777 667555689 572420853 34653220 220797205 984238461 406925256 665277132 928394197 319499323 744355788 963737839 891905308 709981161 971930670 284959785 382042315 420995536 42458483 293113255 970070190 876457880 983259640 620783943 26495588 111583293 88608014 881400799 802255368 406378534 388929087 634024464 892283699 794204449 308065663 468684449 544380101 411225752 214684086 689212249 836857881 106992289 783282042 837510322 199507522 736646971 273150624 339355891 314707380 515899996 364457051 489789958 547640162 760162731 480084358 795701009 286328093 664616586 144937801 67530757 934760306 759471028 556859054 570226723 313304896 662707775 194758 43205624 306897899 805660031 184401615 899971204 172764122 468496861 434015191 317385382 557457738 896737759 323845147 900627587 950023 703860952 774631888 202529021 699196946 137932928 652067096 408066516 969249619 630771839 705052683 573096888 478275081 436301501 809004356 349607577 89959147 386205070 526652102 139329338 103010161 371426596 332788751 485320418 100425026 35269239 372414634 395387294 16093802 160999164 657014903 689298433 728132389 63088167 955272413 355243010 142877155 373963783 128154778 424208104 471674332 467330240 702494211 372382597 399085564 880185758 342694307 121216550 51677417 9993206 839766949 867112104 964647279 421276212 449518963 867283323 765278234 529052000 157574091 620694366 279425268 819976142 605092720 105207018 19153515 525540625 140527701 175733716 849245008 208064066 731458283 866950193 374173696 327743189 386701889 187075713 378844813 971873484 118027448 533440436 113479416 751880779 32494695 426926238 104311575 249179988 798249959 651254958 164056385 196411822 262884619 715821064 739818889 423259500 547320058 334551021 841178675 947361804 550388665 812196798 639500608 810093635 862339761 17663840 923033172 34616152 616980189 573972473 377749274 16465460 978257681 439300510 996635577 812786196 134285605 857407186 102024141 525917874 62709732 854569148 173374221 351842750 309601553 923301132 366416067 49635369 49102273 328666004 535547175 491894898 300907986 702503631 761024412 941904141 938481142 502696588 833875114 454338776 937289586 273247116 651994236 320343426 925629059 677985173 977900836 173448665 273774669 414360459 189205122 231299031 266315856 328149140 963719277 167298578 923844950 342945340 482850626 144201753 11819005 838134851 39781120 96065181 382523792 486600645 171589522 146524611 782682595 368948205 486099022 524558955 497264856 726396097 19148477 669855691 668941732 32725068 306643191 826313720 252388742 62512349 156144917 214774853 527105755 641668377 711320671 895037524 386888131 728948874 470653345 534493785 832335242 150772343 518195302 462439907 967804337 775200298 769710761 481120137 670176430 908898109 293540647 870851939 315743695 225857172 220625601 83074346 588797328 183864888 162783387 278328056 769036383 363527695 8024823 600333092 816649518 70290410 966534402 230047112 686882002 84105725 62304723 558532929 356413353 537163562 295151604 770407785 768386251 222390366 414432356 968090316 71427350 911947095 352188774 218867891 666216881 174089591 407585412 290916703 826529200 478253045 326998182 875904799 280712748 18493297 316249669 715689364 138358070 183668515 530131991 80550975 79944552 991818330 891457205 654890798 953535048 194318162 426234289 243297803 603835133 148307491 526266941 861059987 38756339 783156922 534647767 839050506 979942288 331527054 140664078 609723528 757453706 727737691 727425959 208940416 848823186 224664872 61785527 53104185 537279271 290537517 567617459 960804411 59182161 528401952 538229402 370224058 76504534 478104915 682065528 863064621 410504459 155456983 543336293 483604140 27391121 968871660 8534600 407600103 78208121 231369153 348126848 457454123 575107716 570660888 644740408 625113844 588957875 924208631 255868620 239190442 758744078 581659084 451235864 697277955 259308046 727853591 763665254 501960375 433079136 478756404 842840397 285255416 984283863 664737150 602991769 538038457 472980507 135963752 305910608 942464112 56158198 901766276 462038549 338452649 983206413 908607405 231853310 275046697 268521197 759175491 249776528 253764285 187394839 597817382 198154561 102279440 418780849 307428417 472085162 860250047 994910104 416701484 390094966 446234816 275861633 664135555 875325934 65586677 975381524 566471087 288578909 874892497 725273228 59131206 998555822 748064349 945031868 342801333 537174906 134870105 652393771 701292755 51158892 755709340 951401047 47142004 142148180 679326687 40109848 607049084 932687760 507799802 129523343 898919467 763238444 881490316 244794160 163575772 101997075 398385334 520208699 624496348 940332201 905201012 916496227 782324882 95364337 782635872 219929819 45186454 37527761 69103909 986742998 873582930 241303426 528643527 570562670 199179580 724382847 408126579 728807599 614494451 995828286 654057665 971714863 213074137 651810582 793398646 911434371 589463796 566934540 87373672 38093970 893268649 654232706 787068159 150160880 977472437 282377482 733667426 824390123 244120123 376610558 988760997 789388262 161455127 742848728 344083929 724693586 317508546 794929468 119040068 178571538 147439420 741077463 146563693 814262817 83877020 728192683 364001569 673951413 348321516 339191931 81910100 521468819 401957377 311063381 779720770 521171847 960417709 467210633 515928063 265071901 711977483 868672356 446250905 174140179 374708076 719520795 416386005 744338656 75335864 502106843 739463702 514843570 945151023 894963304 209732553 74841565 378862292 410619509 748782925 97196667 527143438 311282808 187645764 523310542 52824838 349664212 132092156 702391085 812834554 531060785 33533814 497656872 237603807 9491216 17746162 52981514 67077871 226782529 14601229 214807643 263578600 240531742 736443148 91983214 882103057 128988814 431082031 322984574 501437069 316852677 506428754 105797121 993406142 794103519 712821605 272521813 456302573 886718152 628857720 242519927 372323039 749744249 271872462 642050074 477387027 526120415 682836134 503355455 452018858 186311867 150401680 751002582 365995009 190780377 52783157 893110876 640006871 25172157 86830409 654054696 68124453 40273304 638284698 388250809 856753169 948117375 995023199 968079580 768932377 544243097 386798514 728463344 824426829 694420641 118227375 836457033 146290127 648618052 505722835 82082481 219307557 279921709 399408769 639536027 517602733 609768239 746043687 645810654 741080907 66232296 576496719 530726591 773796023 682906507 385748127 836992636 29024442 350164836 121866277 765694760 315501688 780759579 342220119 359563915 695266949 276731761 838466391 569231735 163468382 158899710 753014692 278769746 100108265 850051924 109451354 531272760 579839220 268856636 363462480 382188224 509612352 679960885 5545587 761416038 410988015 565511659 160598600 522197951 333890250 746283437 936752441 654046150 628321098 20567035 178897892 80201815 302198803 519962765 661415943 954505217 217951177 11162899 606967103 933430938 330531749 130809113 644396831 245961922 624664300 645706007 710209161 6171379 822776178 440430671 341804237 240371198 459961490 909709513 420484931 126216249 836034736 518033774 129791838 227066677 993260168 286223482 269129049 303391841 332934854 117101977 506152043 800791452 947955181 917935349 853065645 570010130 808050149 164906194 222139603 740290850 245386286 787464496 913698637 271264796 142795576 836085203 636545276 212986553 748498855 341091246 443408991 161502763 920096894 345254070 105221173 887082548 277756170 633441470 702353963 300356006 928566001 565878823 987201770 136240825 121140396 324943885 28575609 367809039 302472489 43015902 148672844 447280500 193280631 943512570 116018151 406404530 976359628 234453388 857129314 293776395 981621915 280189481 601744958 806467998 19150894 159840440 819592119 168369232 944594992 736491044 615950728 640204823 410716557 331441166 962279718 262420621 517913234 891974021 379007985 794549569 416281731 147711672 608070722 903315941 408339552 206852563 244376719 610064432 79709995 972773326 901630414 917935971 632227573 578675301 599402411 261726737 899256654 766638152 686215162 884388929 617443144 734597949 338223510 320706180 46141559 575105583 81330434 815754366 184339887 657542062 39805604 937929233 141854501 991437122 304086420 164908726 440336570 458081871 660616709 316034822 969575646 506846539 766990422 667255821 423357340 975759095 895554694 210043843 349114965 990157025 968646669 592075463 412514958 586618733 283875443 239722717 630521564 345077685 680779578 179553885 148545963 271527987 342909838 305733216 62762315 868311808 362041865 271473205 59765838 751476164 388213432 295552907 956614708 730318859 938312425 808305436 790082172 289632657 935290080 599968998 623765776 446121032 477074674 723817244 552897321 162044923 840751040 948123254 472486698 979381789 183514569 267353026 902363609 431969980 237829158 984690035 624367261 150657599 74550347 350742646 979444796 380894292 919694119 250075193 408974791 802711968 528872645 666181910 371907954 974338131 731821475 700492738 610265409 55100148 214091114 78396937 766048508 171094502 903340955 144297081 833751483 23335195 252152785 752161477 620606990 241669361 778340404 645595379 830463885 547746831 722763608 969840591 633646373 224926123 826077319 129893522 55195508 921668794 229771132 403163984 88184739 577103202 746982906 462359686 666586711 237401440 688096668 973176762 430002038 766733222 527455834 745367033 891597061 47883697 454321039 783807716 102491868 738565105 654828227 421870023 330133072 542760981 475698098 6411745 324421058 164083314 388440477 349320448 556032888 673697240 218513790 16176366 803696085 714092238 162882755 140219119 857042647 997178259 988434211 478548364 706152277 25726518 5036123 318094610 427337544 900601977 79556836 503542119 658690829 983469973 862652685 262508408 650562997 156115826 162213271 828999118 116455118 297239624 36382997 206195902 711928522 215321644 376830236 620614778 175623304 555155653 745691931 617351536 844997430 385973262 736282234 706948793 247633890 846693902 634729866 79454384 466992759 955470087 817676105 572836067 675023448 715402782 361455859 241800687 999629318 919279919 348080687 240425093 37616999 593946842 383757837 281767415 26283762 104930482 581799641 930159545 193182371 451563608 727621001 210286773 380332326 302940386 365994696 642833692 984194058 374304109 368881128 249153440 725334388 189102339 665918617 975481090 96210345 350550639 283865190 778677324 908483730 291376798 203864618 354826962 28181021 375321860 270078540 413835954 830199380 183758327 126294704 533575017 585322445 480768257 954141441 738318287 34569978 350198851 725102493 787627047 263365359 444611839 772971344 545109866 275019584 652658705 81048922 11765931 836755903 565423381 84466733 990283177 529050658 956131654 652482537 556945237 920617074 44124410 583901356 735613227 58507563 9585413 84351620 100125718 417463399 766206241 402248278 913993990 168817534 153163164 976171605 814597155 515699436 555940348 830000923 807378566 841009486 253360541 400500781 720233805 741067094 613836610 14128261 519883847 506201627 765477854 7917465 771655174 312012622 571592693 512272932 258343569 768365515 658162650 774082887 320695938 160591647 556461243 263777486 599264511 299057282 564671695 527747130 492379699 333363667 268628094 895662224 82391824 803383992 131874235 534240660 624142640 492740109 649498168 359286901 694769869 315013378 250289201 320779211 728698215 960400067 697312382 352390866 388182359 405171397 329708218 306874700 551874333 944245172 416781406 907141630 423168067 654143128 62384295 869683697 492886509 441051140 367201314 971501931 162733957 883139128 639440909 175115871 37981274 27410625 831300364 849696757 757649240 164757104 223737170 174398434 446351982 846954042 350720102 981177867 943670354 204807330 681284659 189053470 776889003 600710080 826458095 115886628 340081289 195122830 156272925 271951014 343221183 545824463 296582153 951103781 48908246 198564915 446487458 794649421 241001352 160031131 390733923 864005886 846326438 668966617 392749643 227040345 329168920 491779318 243711795 866367472 657253686 102672769 749819677 114424184 35334281 863289577 997056269 286692484 692389439 815729147 234886432 399273521 541947041 396352076 174037353 939580674 247117375 850296898 486267173 525206302 28811424 30994385 900395150 596888578 511688633 685532809 889171825 923953174 918386179 644928577 106378627 51784720 784527665 444076767 858474648 7434957 5951641 908534194 252643230 490091129 482188115 976073853 253019226 920941737 391692872 254839923 379589551 508545994 12990714 908682849 599073019 451202041 510148247 820883286 124373069 840494760 565074868 153483899 439034138 775843929 716559622 553782764 888345815 564336999 97025709 922875606 217784796 359293037 54429750 537460167 915039918 422148196 765292116 702504641 737894657 845906481 454245796 639563506 570490831 404531950 784739899 107463103 273810500 582146041 952626512 922168880 265279103 634935630 732041657 229169202 311824687 407604889 969662834 184176364 563435691 725145011 770350748 790567746 263501809 771941672 886033412 823485883 230222213 134210454 470132556 932597869 843894406 159368729 519166723 945062582 478751175 192449781 647227117 233702827 36113928 237354697 205066483 915891412 506299257 868470443 754064112 359596626 482564532 583525327 320967168 636252650 116568475 962093236 578771905 409527875 158486935 136048081 41641152 524072691 526643192 773037475 179662217 89037460 140555995 839362910 958457905 598292325 217506975 925970982 418956900 245698957 261826037 895689774 988985751 117541739 932700247 904353440 554784753 194727709 112288106 103985720 657848722 636950013 894187295 537204321 92700015 931962820 880429747 301070086 417441104 936415021 437202773 463510051 266351439 402209952 421050061 445826260 58452616 943876454 725804267 380397177 558352587 552446899 311738745 608506263 543618889 375661871 829609672 562132937 360254568 857546384 608561909 154267089 79165301 247248334 284898146 389436102 517463650 798549016 846946037 700813850 451030367 487257843 769225565 389575340 907791820 98129646 624774618 8446818 498393196 46928947 152768436 66998519 93604549 620839638 563121041 652489075 737433787 253860562 637501629 576078480 117948257 190618407 537392237 808281171 939763873 327709168 280959432 395643751 488594732 188515522 622609486 130410537 489829655 116964453 379083929 391160976 167322288 404717644 787730488 901033431 210635286 796967041 560840874 550311689 746401929 236281538 963463970 331639117 45254119 300081511 274909994 165198817 139464029 282297047 936493589 130335186 645427025 437270638 192783850 347138155 238732164 179413506 742281506 669669920 831603265 837291832 524055719 481645469 798481256 344716650 730970355 799432777 984473446 965222489 195988137 411438054 558989533 782051702 712956151 439905767 97622423 287991192 291776307 246539975 23530011 835887599 121125356 697025592 907870034 21663490 193135657 914753775 871732014 888438362 670831876 342841086 545432857 899908133 717341507 889744064 307258614 342043967 54375917 584274819 29200237 689216121 94807517 326600218 620217200 811951377 637146718 555980493 534317986 945977466 254099249 693359788 768048560 549980084 485603326 212120550 397647526 232474799 641081096 321106770 524382429 499682617 800430869 458047541 454846777 992587465 507289176 499571840 768283157 283869381 858195904 784323607 895658550 690576172 960658550 918327597 20625377 721087775 380670540 970237291 696916123 998201456 526940377 320052672 159923325 894387886 460759284 245526326 675526810 10086812 37835389 167465780 968722444 63116816 636589253 440404412 60495699 380735289 628395993 60048933 296997135 965147182 861831352 325948851 477262366 379629487 417965867 972447300 450912370 78830096 609536388 425140114 79949483 487137979 419685033 168143378 324018147 831283391 296868752 535303117 699711651 586824506 974156029 860655979 273050492 916205718 948964261 936782893 617657601 851191185 792899982 276673877 849144483 17308682 782849477 460510210 13867867 769983127 422233715 518898185 639223329 971199474 948756276 37363641 724209654 879854445 447686067 60102939 39780817 793037089 208223967 914522056 645409751 359408388 636530393 156541057 730865933 993241086 914100273 559692926 870705407 948670340 445989590 303371045 983876288 671243809 327668587 870482988 657204874 280719474 160324795 933495031 320151574 985195981 515010468 240677982 44864598 969676890 883613745 896411876 294377138 38645703 485709432 657022052 956431056 652059027 120900570 857445989 272462796 209780094 144251009 269262732 284969490 158122275 963037254 467153642 414562931 542271753 817341702 544451904 213421005 914713163 441959717 228288115 521688634 945972135 749898538 672928510 332081225 555069945 963642839 394540228 205051243 67153889 202961055 661687889 525851824 381131271 990059134 280894892 226723722 48201763 561879854 809703487 589240536 999232448 684440362 652655321 240674950 575615075 284572286 265404029 491272533 311759884 434921841 649911232 139301742 17338311 375962762 90478946 385864721 914623560 309305274 761028628 302197617 510872647 450238931 890550127 233348757 518390033 287576876 62537476 409169564 617612697 352844458 519659196 36022506 563503660 887782955 970293555 693575790 116250661 334817880 118146225 895093631 777663708 54848260 729035954 876576494 498695049 603962285 604095821 533067541 78293063 457040589 362466890 334848661 478650488 391430215 691113114 108901181 250558046 139548261 538315547 952853768 23464731 105340730 161790761 990437929 516262162 359689629 42698149 426329359 380430316 807151660 955588222 428069661 792593032 121149944 41293730 598894540 569011003 797144242 165252842 907652036 1277190 140509578 333246111 896436524 340240038 381521938 936698665 788063888 582731001 616344892 285268368 527785229 918713904 535048191 742926502 397756290 457196387 762713692 694466771 571123648 621291931 810798122 616746480 887489993 516757712 891764789 53039731 841261457 218252810 808253051 168137648 97508773 302288224 401538883 34174651 273228041 591705324 343406855 523614329 394387275 433911905 173004702 398909944 306240956 338137527 5677282 250067945 782178815 925257632 155671250 594383523 805552130 809853094 238080768 594116329 498066171 104271544 503604624 948462367 869177470 826354391 441038359 564569916 11059659 583092831 366392351 474921990 750802727 982407924 395100078 412063491 590282225 364232732 80614125 749555098 663386394 971694262 554348716 309948371 388517855 414347464 892772257 408663819 956063651 885505995 776255173 412750137 979902044 956179107 905847292 234321118 489221826 126130319 471963217 289566329 518356117 725731226 712695926 513948136 209514320 210407510 448344841 265041922 227874983 346453460 839518145 355531711 768605689 157058230 479343708 244168566 466208355 502685897 254440413 857060897 111091514 772435288 657088982 455139983 578164128 317478713 984917240 386728473 238338274 343842845 320573083 666974288 321626140 901426847 949822276 48371458 9519566 53024687 233184371 843541758 110445601 732506423 543590644 398842004 74835242 343022893 3604250 833742445 433653055 583398672 934329153 268355544 117272986 231683894 711438429 258815287 179204066 667897566 994032974 549947047 521073038 200496851 368519453 417819525 373638196 449989120 136524458 409841222 779839524 434650458 39799755 167252796 37162918 760864233 393914646 352586399 695301933 683621892 138552071 215470540 709803687 91338975 898426174 775021322 531079698 90773206 499994739 639131400 9516346 567489285 266652232 156903978 76681997 650757712 856401496 443800166 720215496 376109124 412036078 310481179 867175989 572605691 851257012 984463638 444351952 356288961 372994090 501147308 318000792 389060854 820917600 522040571 793144616 742662366 309486687 616361724 770196013 602924008 382633431 121572012 687262878 555768006 657204966 752492497 405436630 584374337 971617280 713253383 944729609 474673081 948570807 519789449 901641432 732224618 65536064 796804564 742145413 364450723 209913451 266053222 387980075 636197204 721788178 947989834 912904317 57603112 359632892 970196690 854515627 746458670 167642581 38681004 539979140 582314090 164040853 751680637 854507185 538468108 645134673 564237524 228510322 25063094 434404817 16972170 580148474 203638337 342898724 643335262 676962992 595675453 610876086 317889022 576585993 465601904 193964806 10648151 771088996 16356182 631090195 562278966 397368755 782579279 968876771 804797528 775736164 70142548 398022780 322087807 273213806 333842205 464622347 582107819 442861324 115763929 528990880 941945340 82903594 110336418 657894711 828953645 218213139 29663056 520534184 181768718 3957703 812063164 651663453 449624496 330598699 602866341 688964309 541314084 223404669 57975826 513994064 94563119 29481780 763822272 236086857 902414779 302501657 280866316 92747660 291851182 370422383 991936659 742354969 859558038 681124505 312840363 750520568 467236287 380228634 966292650 364033163 123563763 47273866 468674004 11272897 113017015 461410073 207489302 921742117 887700608 753496582 703205712 135985109 435199846 999002557 601470684 937165064 46243881 836968928 746272129 909553750 33728112 536740461 131807767 228669947 716328435 250174191 816291728 501947183 856453289 764586001 466933175 112423437 580417828 298322361 642495214 942571266 682879778 103279972 460429840 742152931 814190932 454306999 907449741 332234444 304764618 908533717 395267150 932475648 549129424 790441826 579627071 394976588 105623887 963031250 739484444 58565320 333521983 32589902 373633269 212578801 950020739 619871648 515968946 631447542 475699888 227690964 47868434 222027043 256365361 560507819 690279243 149586693 719664737 685550710 339461536 609323968 149598277 958592973 538916878 614715136 355304123 117448896 932420555 742985856 229180603 51213153 593869605 957586975 441304941 261445246 434365654 775575482 866727216 113863927 553010338 145938974 1622166 828550142 183064427 739736218 265261961 369633906 72334090 741375272 686258910 693779866 452980666 274618698 879243984 720265158 13282088 578573341 23625486 913974429 669154486 930563409 952028257 613988104 323593605 404522078 927824839 420232437 369323263 844769870 636780932 903763008 592342320 906050384 307749239 199516077 488860157 910452173 115253382 586067959 533430242 191043711 930367132 22727322 802251553 855298531 957989515 276221712 704995188 281118004 32673103 472534832 884662951 870682167 850689084 988248085 249195850 777387481 964183437 639923571 409607911 576827442 517401592 391762670 144320050 598837249 684642846 272065936 838303775 291543858 55128961 537390814 341044738 992229474 152414432 609846266 787140387 990542692 828088787 255229494 760947655 892205053 41396588 99779582 824691907 191612751 838533719 723928875 438997893 316690107 325566452 756322805 529463726 738222543 757853305 663513318 626916473 519946452 881914648 823729436 55284897 924677597 286215775 410586579 556002162 531632343 539782009 334367947 632316762 683486460 308536119 749042022 724143977 494840521 761002769 812215494 8413221 639293047 872237860 525779368 665614559 706905050 115992147 305164072 738330059 753165852 655218133 225664181 740547640 225176331 119817895 105563735 184797071 436298559 951040747 536857132 428476407 906912735 407700326 989349415 416889461 492506606 32410467 268950149 493553073 448266956 764595027 307306807 227302058 486293110 251810430 381531718 682609878 337699027 273571327 246876864 370730627 355860315 980505174 97731607 87502056 704091083 118059611 358628159 45298176 442095138 770580300 547009881 383113107 621214817 419221560 272655151 718002806 487923691 405676529 721824766 400662249 168554400 929309073 996404354 3559846 29021109 433660799 839374441 128579701 944559765 953042478 294414652 269271641 437154600 202972930 307784744 686040507 218223234 438334235 598650586 75255901 16838442 772645229 522018914 576681125 419722673 740971426 145441935 579251413 705814733 188224902 166195844 352899668 432639792 631982265 242636529 789480868 267015331 538488960 804139 434535475 910793575 590334452 403131682 8841803 871208270 67936739 130469783 53644987 608120288 632565202 190147243 534904996 938911335 722906876 231958185 28575281 572367314 998701167 554395437 519355896 832128740 664454015 162529696 199393776 207844800 730174187 321861564 86447570 846411929 499688063 899107674 19530544 721691774 669995284 455611756 913978268 172402833 119401286 141982553 725063023 979850115 444216613 704437802 483948660 264694241 830298633 683057672 948570417 816462108 842519334 689596995 227994696 383930430 932393635 663343581 815747978 539680815 162190081 366634352 479613301 546380600 241375292 442095734 732338696 948454672 614802160 196020330 661031092 31788633 452716229 548522451 42403993 314382088 659544367 167340057 778586903 67543339 716689038 548558876 568403382 261447571 206300333 501284417 557571626 222391378 804282595 783579106 863569851 191460196 506582204 488895722 115626571 775033750 571144212 725925761 148526091 289371444 487567061 876597440 35030664 627023899 676094560 73501895 116714851 242132901 677967117 466231110 1023 720050492 286512515 704319335 396104948 732920544 635429729 606831803 746805941 754294181 97352277 368895354 229932911 535258971 643884620 243183475 8498176 167394336 636867511 769043950 325778581 950082999 298208541 698035808 185195274 147430269 680315216 721788834 728071131 891123808 361282987 737259128 26221510 815905338 74424009 502459911 473842846 113118010 995139406 560045232 139265632 41145074 847541863 486538132 6659950 250531180 551405178 152988886 475157413 788048098 544377830 30138922 354239534 588178723 6243128 607944360 737126953 558083742 351152809 274737233 113437689 959037896 407170532 73554382 706274358 463364369 598589452 186447219 360643377 28116590 651795637 101115301 620948828 876649972 59197383 349957342 515778110 529944745 170721995 198951396 329417639 472550356 716121433 419786855 324838612 905484391 296049303 952030767 457149294 121741410 848742854 109804606 777831006 723995086 399636052 910199818 674821686 136712781 683461293 513834249 967251900 812879104 591216834 871723300 740757843 153345038 313530043 946645653 519748817 590251615 156187598 462833272 984207119 478427798 734193593 50262086 956977604 587718036 494680219 135244207 777765066 597472918 374055011 816111730 218284139 852510522 622780514 501061530 699327727 195332588 467168761 603751309 911007725 988959473 40703639 501910998 771552108 275813650 896653364 530926975 308078231 136256769 279799260 758606740 897510639 922259063 111911240 360335890 842065505 901437969 374519394 604395901 505325510 175871153 354261307 997456874 699589275 268301524 556045185 537305888 416295827 907246790 744521380 465319984 345810 286387247 813677487 690328340 355984845 113502854 225740460 474964157 331171938 679169263 404401888 522131668 822938590 532201226 127937186 151959956 209673474 550268796 22751664 293430222 877722607 75962782 300575394 391772668 178247152 463731777 335795252 705732941 105992978 652597162 679321685 969879152 577539851 127390964 809113841 830899177 148812234 504026046 244878255 18308843 991020907 965421643 634999488 242648890 979394571 895682599 28216961 509203689 727492943 853331087 757803712 274406057 192898016 295123301 690150458 812265643 352931230 810369553 26297066 72052033 689991156 756686442 325890333 585220158 848695700 506928683 342769009 879689517 794998822 102146381 855666365 365706742 699974564 538231148 482888574 877524573 263797959 359034950 484274298 44251939 206142296 807429898 592586586 928832166 856652234 996358482 720372601 768692586 595536150 55063161 707931085 877876435 590052902 478246885 256682339 760716154 214145234 530638287 668181145 661555770 990503903 438808049 116638155 958066667 3942818 667727507 3706377 492561458 908989288 998324171 641620592 543741866 206505750 536355865 299276115 453924153 214449092 795330069 297984527 859609339 665820409 880213220 667385126 970831038 573919008 532243249 817782430 548980125 551399704 23397982 9378453 257520233 417453033 345086420 911881456 816275715 501054197 158708368 322129756 706717689 612676874 681793139 846588577 678568770 382533953 211866831 264927982 743182634 976834533 75607849 399084515 765259284 67425312 381152744 79171670 662839388 541561916 997867498 677034810 77391812 92175518 43188400 149741899 919804664 393438021 210704555 607663433 873267836 814036494 81346599 300772864 743989190 128478114 554803567 350544790 100860216 723527044 114887899 418900252 310019664 95120583 26591883 979999141 826672055 663125994 496104260 222101226 118075008 268984612 542652658 95739555 839210597 362046570 338504284 610020981 587078303 646508560 387965428 440320610 743421901 680667568 243185120 257143689 979977311 856626885 314711395 616881155 486175549 796843044 37290369 128663206 595219317 393077916 43149578 153389737 440958888 284610417 325955564 501661054 856049148 38438826 147817934 24566333 172877019 192686151 445836832 644871820 553543229 688926109 345685613 795515594 845490377 431169198 909265806 988036559 861825357 144266584 245794238 669086169 725961118 869964164 918438723 328343048 724566146 9042130 814846476 344668643 315310210 395716463 579412283 314912246 706352655 590646107 887823858 849278754 876698881 465372676 63370809 270453725 675013072 180981955 264156209 666462726 652793263 716096746 886376213 393411334 640425064 642434674 816038322 27231791 415964599 465393068 115367111 162560941 762002515 726326909 376148368 451721005 756826170 787659284 131439407 326468918 502847368 405704812 23704940 875245512 126384673 179186417 100109936 127784657 706400913 14688170 869779190 594873507 204983553 862862493 532278683 979206489 497637014 84425026 578940338 86444744 593378528 549954808 931836599 533835869 212124733 862599689 933087856 445376483 207276650 612026798 922437488 157206560 212125354 496409240 361232787 253510186 680861794 250976113 197109008 53178019 71737925 965796293 363476218 641323128 221804053 551267755 760486491 176415481 228386824 219668952 657738506 812871552 625039684 67176380 169115553 873060516 477861063 398186368 477245261 587443920 89004294 296535576 965021971 353874479 400130148 55282417 488916659 994703146 270166117 383538248 824218583 146724431 851432243 480540699 552718251 907759092 32403192 722368089 753062457 842563004 715021512 561616982 228068888 548150548 616680113 309412605 454288308 931409858 761040238 658643778 658126605 103063121 167732477 724348198 431857286 759737890 929769843 200437412 810946504 627598801 767585885 398630611 808994490 497343566 978262764 136717019 949598142 27067855 705307472 971693730 717051039 520318728 31014197 947807439 855190430 979196310 664182628 808507487 387516494 410985618 215578685 724878345 375510301 200630119 874604668 53475872 593112461 226689533 283050713 411594458 930744598 595508441 573036158 110687561 713536579 113932488 679159006 60319194 30747213 104773793 927577761 258728752 287854931 807059025 714454191 171543278 423501381 628906681 561342884 349517481 82455307 863744219 919080521 879695190 229569712 89763608 454725744 941937106 219529544 318227603 589351609 424743695 98255454 296970997 819182100 303490733 880299518 942921980 473801261 698238365 815723834 928688537 280928457 91769150 648779174 499930637 655100662 816707619 755115041 795938073 332712867 530660273 513119849 619888719 214604074 833829428 845754428 341127843 838387733 448614985 755648694 279238916 367526392 285791151 263812758 914487900 870494848 613988374 981806178 912005514 771320591 849824481 301073984 8783197 330158619 272272573 320108897 482553339 813762442 762447335 801490754 188990205 18437837 877210071 401978503 851151131 457576116 384148382 781985776 570001633 965150770 957451823 987234663 421197549 146970074 412736652 622193098 681843199 414289649 278641620 377318610 207810739 31419403 797224484 103729613 760671861 785489324 7784074 830253399 285364616 409532185 168208181 670397837 343079185 56417155 56103053 870503234 369352853 612005900 821236670 198312574 667268077 580546657 624748530 568924875 50462175 215773968 503638272 765828208 895596044 287939440 353712465 135154512 878451362 162033889 492825167 386520633 128763314 6494270 260804407 247443932 957834027 260610742 160514441 357644054 163954888 799573101 476143563 550897642 599969300 332959120 546697603 968585025 924447517 7949834 94214414 746472008 196855929 7319368 871938888 346220113 514586773 437081568 789472917 513620899 575560506 605691923 60268008 57329101 439942426 230629849 406143802 849727188 361202296 247159672 43321933 383265552 324659816 330348192 588659336 220647414 65921989 839662873 699412619 434709645 296629669 400546927 93573304 367880615 625336053 692068108 835540384 843752255 427774909 795163717 627521097 225051302 268393707 786431657 263173826 409060346 455048105 213466357 504707747 764358881 767935886 394642788 568433202 869012207 31721528 604095376 596231501 620408671 829565547 314469202 390566915 242302642 368596257 321700369 512395354 813587293 419283041 620424943 596395674 495238602 715588294 469834823 370648955 548149194 321887724 731340830 705106251 298988733 478417314 866411042 893079576 514064050 696858289 459557709 511059579 138702330 43486193 578907600 192747493 82700064 632747371 390126851 288836992 892154916 743970644 55684851 859282612 955774893 850900234 793010537 877086406 121099794 25392435 387334719 792683267 20232785 946356216 348751601 264321993 417916917 563053777 471386537 89144650 400562738 610136672 398809271 666833651 272517576 790767036 781528366 53484750 864117120 307453847 185083558 162954363 921707896 661058361 754015961 167344038 729425316 772268019 181959816 186626328 34668819 551652243 193687800 431043025 48062507 187698704 93980264 655583280 759861435 921596680 182612437 336499338 779653373 164565933 141075605 653783444 281166447 246117653 806228578 271968744 478268396 652279617 307835479 946078087 590543697 13697854 307999439 255285848 539893296 478594875 741123903 58218210 641829695 886352784 63413292 713730412 111406530 858869843 217337507 825329521 897850680 216220191 479772542 277691006 967628901 162371178 138537885 77276188 752270295 478509743 156170711 485746271 133145916 134917420 259478696 994279736 622075376 937612265 232730305 919849397 996258631 271720533 632210237 343388862 782458928 614168211 665901693 782445305 271242466 101624327 76880596 420771828 539177078 211443691 918700684 64225848 824693999 556895294 662140424 9076064 864061288 675070201 587059852 113386718 614204646 762551418 894036023 111302045 174471913 1835481 952384330 981883379 24212133 382592124 411266405 483141765 343799076 761097549 18397001 50793277 471979740 294100602 178512658 717472134 438002664 712460520 945345543 593627907 965973271 124028168 497252920 751169695 450774291 34418626 480823126 579335354 624674176 682297626 573741491 402774630 958935409 164737285 532533792 449735712 926140700 982543562 119819553 619427164 83723613 733704814 108161217 928773387 543245304 707313275 936590885 760833622 948606024 958628884 527423299 842246169 207412389 659216474 592753210 549379985 499057923 170140436 884899664 52971731 596650669 373970297 923904188 981897670 620103327 25010081 840024270 581082536 663458675 329177363 346713726 64012518 561237190 481155871 935261090 330028533 245149160 764888577 518265403 988033678 630843798 931253821 685719674 166676329 681716099 260487763 643128129 768056007 338890033 927246415 375968132 992395691 3423500 998562991 147795616 646712226 81200247 153804167 229878045 308796326 144789273 671312542 490027427 160614839 579798079 768471052 122980216 480350369 115826906 836046987 369285185 51913188 544882775 8463378 296308768 445096195 498179643 876703662 225104006 844299108 938810673 464377547 701266978 761315999 792135997 365190590 298946452 241661274 348102225 563605438 7624080 217248803 377524752 596673324 415148376 657232641 679914613 951310757 662280896 924666598 654979216 224574045 269412822 298116806 631631458 53880807 875149346 951439604 64609356 68990999 339571140 518496563 345093577 316175300 391814791 463451503 268529759 261951734 745502753 445809526 874060026 223154988 459532945 545596644 196947646 244188207 811865999 548775079 915491547 488556517 94260389 950732824 763514220 817296294 954771034 491638230 790397692 677828425 3881292 608486077 71277997 701270559 663031007 196113733 256637541 30313583 875782863 379267652 614201656 261677166 107582926 842433478 65247273 990490518 562206974 411674123 253357931 629424008 17904326 508557480 603121420 704255704 402731869 59241810 408904725 303292074 287672947 188498010 964185902 487459673 503946051 724442019 157022560 996550105 626977801 318669514 681447894 93623363 630834800 882279447 539478146 891575962 638867952 279743356 623128488 799837627 569794580 864633923 245029734 58307763 954676598 127811739 196346210 554302863 381872537 390909573 700104434 519587399 368727675 391872185 889479185 492220342 116387106 456060067 202137343 476873437 617854426 991987146 687960192 380036485 370725442 571491311 884102070 40629087 509488654 55225550 932976925 915793275 836288042 937267492 858608269 80836483 327961198 260898436 587645630 631262229 333485702 749309150 585955980 203151152 378359960 945947224 821220854 461806543 652152250 761795762 398710150 708631103 777417785 256260734 303044790 17401388 678208183 975455947 168462286 439195872 377992363 75082275 623328 591985726 318215306 545616157 951316777 822241603 315043448 97703418 879073849 828192362 849412843 18552608 233521477 662361658 769964769 13248922 171473249 222169318 374608532 548711244 420542430 451135416 935913839 385005030 856300170 567723769 9619328 603843366 157402938 952751421 390568908 210148085 300726974 196504137 993543717 572516623 277352220 849620171 938552902 913456955 600585065 531827835 332413365 720926038 468593391 132652968 658277843 758302384 76864918 723628365 396716909 373496487 772298573 758132841 175233016 643699011 491500314 811016584 304914514 740486136 504454777 447013032 968801272 643519589 140842806 115877447 12801613 539185544 676070564 720379170 517823474 825079314 183437217 238046714 11265142 573294744 118805619 445304211 731709479 908529775 713047905 2674805 625921760 407374212 585510466 763221119 414014127 31100126 813731230 135449034 150385982 622980729 156752609 63755974 162460743 70857190 627839520 904991513 138693905 254240761 138103738 626862229 49895647 601631438 882654888 757578541 659727413 122621564 398934719 491932939 775108368 553141963 32437318 343152662 654869194 520344172 364824976 90997295 784060992 206948342 824420398 345675101 659742568 324378395 611938633 563250792 586149500 735360207 10153845 929124139 474643008 644909940 98775748 558192472 95013325 781499633 537572920 682117588 510160898 843398599 370285648 954764936 367072056 88481564 162142866 443822125 199158712 142498631 950067156 874008645 502787669 237940603 790285250 492654011 570344777 969431121 167596190 177483986 381193307 861341849 189030395 610297542 104064231 783885570 682055075 133895629 268881949 376834390 729226303 752893239 95581674 697834472 652151298 289390465 22744920 763455363 640779847 283823898 131490736 273757849 853720871 23751864 520602006 659353264 860550133 547718980 206340126 280408048 169665226 108585175 410458817 603786183 364824212 116035860 32314310 291286320 420631737 686488455 715001780 966063000 469531993 513633112 162951581 15702475 927924026 78709521 727795607 638568032 207537299 77232909 526607091 802257079 4840895 710703123 134995166 813045521 411641924 131638792 160764697 452187977 661560937 712108135 179637839 606158368 298850211 475271180 656868205 201460762 237969299 344688555 473256360 202222616 594406365 580584383 669014268 380523722 844138553 478516248 411401019 756224250 61547211 163954495 834281541 29961373 522179357 216890825 474453232 82105324 513475539 562369595 300708232 335523411 669976909 12510926 458449866 118618953 277519463 209059511 621464906 560685467 746945616 694794355 114038209 308126608 901947671 953112957 211753870 646592220 457042783 985543133 385607290 507233411 834300706 14557284 197361485 267278740 244847851 494601883 892469107 482629846 341240153 862410138 402628307 252168962 309183512 511563981 17989627 502392479 991685593 894385950 547518518 980205819 268742422 823343083 756943474 254474793 71577302 978496503 660492688 282437205 887287347 425347968 61339985 466281566 345017381 642430560 127142169 392185438 99661029 27119651 675472551 523795687 185932894 834506745 291675090 924409423 115637546 218902088 446996137 344048326 724668934 981465411 131602092 188838232 845822915 795451932 363107074 691151466 222421511 913609874 585735160 265179467 764416968 738929580 302401738 153980970 725789918 496562514 972515431 433748722 70803877 779429860 723050306 241053285 522630381 580527276 445365728 936847909 468430736 981154640 440445554 938327848 470045425 901837414 376616862 939382641 812971999 252700564 42373758 196025384 783922330 811208944 667744446 188470952 201288117 181040821 381176037 349333281 376541545 131491830 576357374 554008498 499420276 316941521 982417319 397552571 753713921 131824139 952855663 585499031 298614102 388453412 869559746 278584069 970880368 960507506 36706887 92391969 952481120 531905686 184692152 71907278 798747162 368770578 390115954 179525778 754405967 198561391 306453807 61608596 979300625 134181118 304306142 134527269 787512321 289432899 231049113 930620550 438199567 132971608 404362138 318883817 221623435 544159335 855035484 826138542 801763826 91927212 889883645 927170287 891370179 632840167 378465001 572767426 378393682 589405644 10650911 569492359 766662823 631322878 432541163 9181848 574655058 398545191 526947732 712018600 331934015 410897650 802201532 767469939 135343237 265236481 165366030 456004112 768905426 621477627 597640679 173229728 171197224 961448430 782997996 775275444 25557190 442497995 157041592 9085246 72412499 145602200 581572647 750763760 413824303 658952937 269402065 298130363 176000236 481550290 235775223 604594074 852778887 454580770 577919788 102273896 922583655 379830139 104832472 728242231 938439837 960100446 336571562 358515421 498350138 781314500 239884973 135291618 287996750 37760666 947215657 339945079 516593102 768938802 711057216 574760468 757346820 508856652 864142550 29941287 714319130 242325845 296473048 461016783 839238666 51367437 468534646 283597734 8513283 321558631 112209728 837907670 916462860 850500057 333787814 941010857 850594300 309630451 440963680 499392918 265891237 532091229 777726358 87905388 51634040 694408072 780011995 252309054 444828066 472016386 406457029 202403006 533764111 846020947 815928592 351346800 343056343 229923586 678048795 88527735 535423437 790723332 617949333 889412572 342315461 225797961 168085392 553018115 213710859 981876735 529209724 713063332 261561790 616812333 853759257 470165082 653095963 102236578 534368506 655290160 910168053 491816671 933091777 709380092 381043761 834509911 897349010 585509186 123042590 364467254 221940707 347340305 573758850 412996511 336496668 181267943 710741670 54797779 981328621 449076194 801157229 507611655 966272565 813095573 93507361 741128488 375031778 857058434 756854919 738361797 224674183 296604779 303786215 675468341 130634072 553198200 31702779 818723119 359452407 925684824 732049212 209662539 717034517 89666770 97925143 490162140 925599528 725623885 980388538 356981281 823850633 56370532 163183753 398343433 212012639 491637884 685051952 993108404 224669640 652433870 210310202 35452579 909310489 493734330 497124323 520677196 618950702 630298957 871512094 710105502 854462643 136814816 154008605 353110994 826331687 419190894 86528559 820571634 436200963 593197677 466957937 95163757 773514900 748297578 100451953 666654898 83174151 954165241 564821046 406512560 666560381 505503899 242636553 769130793 512720504 46824328 52516174 611288322 507761514 389341444 886070878 864215860 438157201 990584509 661858573 618157628 46449859 522791177 354868967 930305876 713239409 979931840 807009978 227355094 539668007 485002249 480881058 259603178 127710627 991462933 981016482 88764652 139386167 827500992 354267117 955433183 853352438 898198218 738617612 800176338 457671867 166925357 998963852 811710274 275875382 632416424 143861783 24413783 178201505 669219115 802144567 87022194 921456931 511128520 694501847 204167960 272990513 497733833 565840309 305971916 254118258 741014869 211103236 42386826 8719278 11992792 112510888 621248665 66422832 922715038 618306881 439556852 664630169 814810394 283319434 863934266 983772294 251859068 645503267 61898313 560080070 727042329 271216693 270682679 683052306 586902778 791992484 944447200 521749380 886209650 447042464 340145388 55726520 984025603 168595367 767748263 954359247 61922218 131270685 468834371 731266931 341289217 539173176 240053517 829103221 205705294 172340065 407028560 796290226 173975742 783034939 40753944 888470183 602397171 677324867 715672622 543678888 218622504 250712997 769842206 626070852 859091956 417159745 654129113 583092646 699717883 964651013 911357348 192395601 811197171 595156865 215089892 134441169 771418025 301378124 747256501 780739709 293115840 437061987 200328513 468261509 469728417 327593047 378621439 520873733 296282465 250026315 224045438 94095344 695504238 849519305 718525284 348582652 696297221 788299536 545543522 88912077 736703423 630109822 164646295 50336365 669820197 417807478 407860086 605793247 951237248 836213468 734779850 711253120 418330211 343163615 873315789 898034591 420316816 531128298 313671985 197098762 509488424 888874396 647241087 529500484 789072868 295906729 579021709 432909839 829124613 856475378 837607296 202321661 167660969 132087180 510649818 345322382 480257142 138622475 358527919 623288531 31963088 957895914 122802766 869468956 26449012 585226406 701399006 274496846 292553536 220046585 236373658 218815155 257964273 748715842 407156793 674943445 806758562 382961561 786242866 325558306 169823824 902906712 668224694 960671081 175825394 692856974 794384114 948968201 80546626 820419355 991045882 946410311 975812695 154042203 265466595 14679503 587586906 369008698 95879762 483096145 137812344 590209798 365292900 858194715 121634097 89605424 508105403 479178645 204498063 24761262 799579502 584209658 79799295 128600791 364088968 367190178 714537514 99660448 355911305 969164856 325215513 958933175 88006164 628333478 130126973 646119401 206737306 928628625 52140176 147924790 388822265 194708443 703018380 381215196 592969047 113705221 354183726 268023970 570894366 412649736 39399395 992500761 74915467 510691797 450154604 634021771 176835039 686153319 983094713 301669496 917623648 598545191 937608081 60263728 257288276 242238667 78778682 854603380 328961265 886665802 644277226 225859211 403999601 225097128 991644007 137606914 613594636 768416088 726584592 66923436 336368083 188552159 728069839 407597307 278857896 26268887 398422343 657328566 859395325 420677602 355454891 873769882 926135042 926082680 242923956 751902703 618727591 97746826 216195165 654737437 418568123 106282382 948498567 713992856 172513416 636572698 668741126 410846048 844960439 588107772 17870997 910285654 701829506 224042509 176517701 824805332 983320094 344782706 210942184 490753837 761522397 2154828 103620387 179043947 770897283 346972510 147759285 533118056 4124193 146980694 385574386 238629332 181064869 341222677 619544189 445118215 864892879 387621187 424366987 66444785 797810734 728953244 300375286 231703482 899335683 914188534 542595744 563282185 326613975 859477330 421130417 401665750 189286734 161867048 400437646 252471373 357702468 221664087 2940351 405067651 584914071 501963223 338496866 257813131 398893973 294140109 315869320 851614450 352471012 13859965 259450344 825646419 285811402 394457778 600799077 448640238 972259293 113437548 429596745 190338675 261334575 731868171 995663639 44061732 330886872 269382087 414449791 663366978 983547730 60290712 273422563 603013428 526831720 272713939 664771403 183976244 361850175 124524987 318129296 245898223 381245257 450636835 498230994 506699950 90260995 534965036 230151250 624545914 417680014 330775436 596919878 54966915 994321698 996029768 649357766 407503234 181307797 883861800 201587161 192516209 978439575 970841133 492659697 5937535 905319919 179739452 746917521 315746946 333273959 854280094 407240386 807495041 97931981 482637362 436554465 747998828 399102276 576706697 589358220 764231637 518845127 482016355 539842367 248348149 832599196 685277023 368171807 776673639 424533300 573422303 300386912 402617884 44897801 54454165 29842178 338710349 997085109 504818383 467737999 112821200 812220777 880199615 319477083 176916459 530265479 699539582 577199984 662433773 368924865 279658892 805884208 374659838 996087549 479091459 55968051 444609178 175079591 775296690 180968979 150207820 117647067 744053954 184029559 396990491 499778709 984312127 67555965 525397680 275086429 264838081 746928413 776625713 425813340 190618913 446326036 185750410 653170852 625897370 318180672 344405333 796061544 429316522 854322611 275579070 791274932 428283288 343922371 267455985 271221475 670395289 649006613 656791062 793559461 946242322 851133449 562941175 472437561 669189314 93766202 420901190 919152362 440628407 46653089 664835147 902058145 403470166 431653296 106563564 492935498 26124535 737618737 763211628 782627541 605835418 694403547 465344350 524196164 419849038 641994411 463740681 685239854 781994811 628391571 62213749 797997391 33815977 73152573 710551289 960251130 678717014 296553174 655546073 724770383 687363645 804378624 708523626 349816296 490666037 571672414 691628758 273980209 779353015 406311530 38389239 294629697 942733976 43261370 930190248 403764212 592388537 492016953 90793601 435632191 204795095 901997572 861677460 391435724 496793271 551020009 932540828 275991092 130395704 78123215 749207906 240888985 777412192 361503017 107631954 974039451 161767325 116998200 492533139 314406516 324387434 778237415 17962889 195267445 503599754 526708147 828003333 52703934 392323008 145437742 255142667 763569192 68765268 472453223 695616557 946086743 490778437 851223437 373063653 288816891 46890897 262571826 539516757 739201466 105032712 112300664 451362494 506795614 776086891 904766907 89222824 83339432 967670669 897554149 347596102 394147539 514401065 650766746 174143930 264468568 134388940 729774444 324392439 965796154 725131907 700689736 488853554 841639832 692648350 331911681 804115969 295938297 401851314 836804140 500216730 278801737 959944051 181335713 758554613 845566918 42431174 982182817 253088973 297343458 464428184 185731965 991025459 805188543 30464664 846443551 144615196 599668118 32196663 809663042 86296417 583771514 702033540 8764568 726193625 570297897 662828551 954763821 113504367 777404683 63349992 284696410 540317947 435140276 432733097 71361346 989169725 711714889 834094164 995032884 73046154 749823834 824734094 134843238 795424105 933227175 456097238 985128779 408506240 374656846 731779886 397447280 520658579 621761022 773477235 920392183 696113289 631479298 894935304 403926289 982145279 192243058 557197551 269654937 210300613 867544447 82385751 657434686 35574699 804987058 491120214 895744638 111542360 29951234 448978440 950421286 23757659 145462140 910324281 477559584 627921287 464494333 775765100 497735354 238017906 340731651 791800614 627555227 528432624 451710118 863576045 263828496 937641893 920244805 366836870 518240768 818514359 778354761 134842380 581794005 419431414 96336750 947848796 404898614 243038518 594944463 738066020 586193350 882495418 655279578 665230428 49273040 357913136 924993104 768589501 457052642 462797339 970174683 798355887 113135933 428223017 296832555 971817076 949348624 145595441 355244309 416490871 610532083 679491570 918138718 329653790 297289901 336401520 950856261 482957865 461741142 63882004 880704833 42393415 836768622 297623378 826690829 349816745 347770224 847674739 552220911 644980336 474525056 973503966 675196943 535524918 17529309 483396467 301070124 433513532 809085740 315702451 465915963 982346005 24753232 770501678 741083168 829001356 901177367 654390157 742639187 530798091 183900159 640674514 502667912 68526498 397460029 506685192 498292320 461363345 420853750 491719006 715631854 269149867 174381689 145463853 425046991 408744163 436083381 688029452 307972771 386068171 504789146 388322126 231111587 621820450 849687731 923761917 202872012 932937452 611296550 133137059 687478285 504671922 157624502 129003957 90850980 754232283 627997859 980371367 705782470 140134338 63233833 524687160 788910027 26475687 25792797 20409004 380494242 2422104 458093670 873322970 498632611 401997719 342221931 816803085 195441138 701864560 640866858 989785211 300608351 400102756 727226258 624890126 809407234 813713450 279485752 652578536 763262433 844647249 525902812 701550130 378392027 186833255 126035283 229477322 735915867 878956403 477806488 898181437 665898558 360130173 742283397 792693257 755742658 550567838 954044557 704299309 223674930 769913513 709358058 867105757 605343896 84464240 9837515 18150108 859634472 236023962 516530902 210931439 407424506 232396084 94693291 387982492 117999712 876340009 187602497 799446943 913802948 160889318 961376837 681635677 146115585 856062603 480694064 567285913 948482927 562451457 352327338 978740443 454431280 399186173 382847693 303097507 752679081 536646245 71354176 701855794 625861820 378526371 399695622 24559899 71381579 442454260 870005747 12034805 7393930 343196222 275431468 531407058 263295377 521826562 959747703 876295192 138543965 41346140 384882028 919575357 506226432 919355864 314997479 243533679 108297302 8620191 378571593 482430817 197555769 843951983 77932433 349846631 204613713 813916235 327100235 456281259 585157117 943312508 595435338 257942273 461026520 496976227 651888362 752138842 443729099 756378718 292174769 448009059 749935845 128447978 245141823 409225943 657009960 153687920 339833458 155540866 840696225 113213603 571734614 792808259 53946460 482361034 919371637 577953500 372190167 904232032 144865188 786431720 926470285 294603247 412803948 97524102 985364500 109649436 149351111 646629066 357453767 254524678 167530322 675407928 41197836 120415652 932351037 615261292 350686152 957718540 315998253 272228270 454576319 950240787 859972768 845831128 984315344 248340038 761816907 484952454 861760285 290685511 389790899 668756789 666274081 378363170 231784511 865941593 374032546 281141016 288026665 889384829 805326969 658114733 271321752 986268899 47751589 490922554 337743097 167537848 139490033 614184899 462281349 388213086 443838095 890746069 936872535 883099318 930519122 877638236 909211542 553452628 147447060 191614448 349258654 432856696 449600196 340894471 31504317 953661416 621379978 574465459 966964039 342021175 991993723 524950777 745849123 398142495 797958678 779847172 563326998 519733311 160296449 461394384 976977564 310664119 330428985 239262585 751397342 839703623 238999855 123966166 115899782 794396839 372149957 719752379 895712704 446070348 676281654 290459883 582036085 585502164 71220864 206495302 193775835 342496673 384067519 583189700 940097310 723808357 927512853 249584066 728168390 453681284 498607966 825620134 325194212 422006233 800094146 244324477 105796119 569005980 650894696 22933031 415889222 866055810 631148193 524855506 873379921 289044096 106626994 727373052 896630362 468799603 725781919 942642670 200506013 776413759 34991247 221728623 738630702 561860356 507701734 853221809 997518965 589698421 196474083 84082615 934874025 4207151 13397369 409649701 486039260 772124315 610168372 448118584 353184925 417458255 630872388 602656969 467164201 479487147 968944138 538189544 55135669 117542158 143395079 440687646 790938865 548384382 357812819 747774482 791035339 150333149 471530274 80148971 474305988 99751520 383452372 708584910 733003108 33187982 407389874 2980080 160716809 680649206 349491985 899007847 54612169 82831773 909507521 693238394 114346138 964538233 348147000 32900808 234016103 703916693 878600227 481745168 363598715 93528681 323946885 618571147 745592422 786740875 621026146 590253305 947603017 403671561 292687202 196530250 837483642 638871498 233589915 663922227 997020151 118819965 584858969 707491203 96041383 786942927 699871079 899144648 986469940 907931254 871855367 80773512 972767208 623395060 904376295 726957271 653722160 427018284 433103974 858383785 847274113 625031202 318606564 408474143 562590853 950247742 740731314 97231994 591952662 340806164 191881620 34327919 794299150 579142096 76729290 286453174 323268466 625392092 620108993 261407844 664729690 410993480 886976102 670805991 582318235 69226244 305795679 449485921 34355196 404442022 454251630 439389912 921439488 798523122 623945247 43997535 738038571 582988216 823486463 754366239 217703223 872915885 595765735 547539176 11201344 635743817 889789333 246025234 760692312 99816162 862215346 126499126 30302542 398526518 266229137 162770482 348885161 207048344 94455704 263474150 182508695 736583421 804810336 366376252 912054267 465130861 209236666 443857532 183861570 848206104 175419437 178835911 214780382 238311079 318177925 566451577 309605580 993497751 233872109 128623600 197353533 587170620 195432194 47993181 448468542 270694310 513592987 721729643 124178805 951034454 258463272 141684221 948231991 16789311 240719225 760070411 190872626 445312614 739938322 814310334 652823289 546157250 92614297 820185742 605936190 343736117 353580022 998142054 534418026 889477785 728733436 315344261 38041110 647695337 515190057 231162924 352389289 282654081 424652591 398949688 22735003 243032866 817487004 790551364 137603142 191907194 600491805 234050596 422694457 466095685 140097443 189993181 736508800 243825077 20478624 562133545 735874925 83077465 480747092 578480983 157800900 149761946 656184157 895862268 442147354 725213715 923160314 702801502 596881731 479156143 287088319 550188823 600571290 735740562 990151493 731350133 732299613 895758767 226451157 69838549 328066999 277158563 473848159 896696697 102622821 290535266 700601251 587745933 459189951 488190281 160258558 984570031 266346211 650310959 433348936 475120736 156557219 543618054 639155760 72157842 74275820 301548526 960406768 135279725 537574032 249417360 794312347 471023383 569314693 243694640 324531778 915421213 286999478 773788473 307065802 781397589 321290364 529307356 279922548 477635105 842250275 794406979 438294160 572061769 488400174 690184876 217183976 74787656 39652935 562811261 192379715 587284831 856180649 292499951 300015252 477147913 893592420 513870202 472105800 193752359 308410832 95206637 323350579 895353793 242303841 933921681 732281255 16340056 893149571 950700458 492016771 471871851 563993795 633962005 393911036 709480146 436245176 263862811 574326764 465901777 450757931 172969505 26827591 958051513 450930980 28517587 69809643 681737608 721007351 554074239 503073781 574023732 827467968 886190051 485924469 790240940 443709073 892806008 822480455 863138319 71660140 230103368 267305927 871680529 387636942 778183428 893093589 934297268 370089994 718611780 750111901 884638220 65578785 637699962 110494933 393317610 958909133 846147155 756943220 762501428 295134114 233138929 691406894 798875252 475260876 265201583 577218192 616433906 267477182 801251352 159609665 775258976 653611794 922639721 347348395 603154012 801588718 226217840 978008488 208365387 227748546 5508572 388166425 617682574 729721004 655649059 193971302 917975113 362146694 938768226 755863627 568295677 70097754 535521889 719284184 547881486 703058436 635391545 97412605 52652100 620252237 753076394 85426669 24861366 586502802 146673538 21944499 206861366 898606746 329777043 561867302 795287016 613477065 952309344 213806123 76457555 130865336 439289646 449575001 573967541 874981903 38076453 155650867 269416687 524411332 226350001 771249851 11037822 514023625 330271268 702254537 787832758 258417279 799700377 287067811 919032498 886178547 774479536 428887898 316205261 581932441 654788139 768156716 395418131 927018941 582425277 85558115 745260836 354919280 765280151 555088475 701375206 674592150 902196926 811777499 699330200 828704821 248507363 681480053 963330041 744720952 933388952 755856786 989216836 470126654 41360483 555291351 347518922 81009740 677914669 426477061 7505404 491849053 244593558 102288656 314266134 437339644 162159636 804919924 233026141 539797776 488277266 194217965 281638001 824235593 808570487 10125221 209052184 895753277 127104814 431959989 302382547 547016769 889707805 872268893 216205735 335007476 209950665 931953641 947066105 310056868 857750389 12776239 212646010 682647871 469486840 670749151 651292963 533324831 814615286 504224317 171724905 704725152 212830150 731337988 342257514 450425537 812729529 659293790 906585987 178132925 162389560 446649737 850000719 528029224 660970169 513905638 440850904 895752699 757603 244984501 827884405 875138819 395006416 597971197 518771638 859399676 982766997 76294194 258021585 426637281 672343864 882848098 8244345 385298039 93236612 21215798 665895417 659604734 957067438 524287460 610626325 677062983 651063535 91655585 949940695 269390008 538863270 143007417 965208040 428806508 286053766 875044346 35905984 593075731 132586581 266583725 855641798 814982924 854502798 476150383 388495402 989667880 689458821 103272384 314819276 578244732 666190210 775953402 956863072 819903367 126622434 20060264 932737680 629715569 436866247 205154537 272389214 437964971 890526923 932214850 322855283 457981549 750566866 107466401 330567044 413033069 267618727 196217304 194996821 42854034 379356063 613981509 275547304 948583828 341974630 96578856 758302647 820805627 981998108 166841109 512852988 434131989 705405942 722606182 789618396 356269982 339203494 227292032 392130408 8889314 302592859 212586357 608461061 677154528 930158494 279699996 299360544 809411504 629429265 146193608 759391817 825200665 849611963 69713674 602335011 261734140 969008630 813852373 706008066 232603055 617565930 589381414 449004675 602948527 698389255 210873785 453715306 616353743 292280851 243562975 644348303 308836098 363424468 934212718 591361602 700324538 44613527 150280504 631288873 766248085 579446456 566012167 684214536 614510051 861970786 657637140 110704217 724330738 416535369 461945099 968007576 730613566 732758680 79483343 183480805 936709110 3103914 33072094 270083760 251607144 640396382 676592613 240709122 117413420 5364369 995164177 266563449 745400131 345738644 107781521 48455289 453155196 437712920 675201987 312186208 147169164 141643647 483055931 691920933 604573998 274175794 637350624 994915219 66574528 847244013 33961645 901247379 179920457 199676267 180112338 820112004 345705928 601265924 479568060 265208851 706137428 664680286 325297805 631415869 855186974 122536818 125848117 898828744 962541156 979462520 141660887 520875969 120974948 729432099 27814585 7967928 1473217 480177892 938059713 413681857 96220145 294030444 155914038 252981907 745150013 994046238 578899653 862531047 281598982 559438143 701114488 369884691 876464879 555279511 32393746 848651415 59573294 194202960 800484682 832338239 150065299 491537120 808185392 626593660 363654000 871801966 600149723 678242825 980553183 309174210 757707961 607254934 211114112 229706784 333495706 45847511 448527562 388642782 877280095 538015768 745034102 745534005 130349469 421403435 737913981 825813764 695091419 544443936 591133361 35506740 20302254 218213785 419651304 948304035 432243645 996391727 48144471 782462166 787823690 654188201 574003568 263372704 245403419 778028492 847046173 531995904 414415754 892341041 407434099 566336920 441126814 276401883 239493839 558012679 958869578 413399477 552028792 357998800 756966780 262921023 499106392 280745331 948400433 802715471 891020958 240814453 845219426 301450452 115758071 121877207 908400020 777354287 539823945 163869088 195283784 827490319 513176509 672575778 166576674 159758058 636335794 993802042 119581324 447894859 325475594 789056525 338044784 908566968 791373012 321398878 917723382 432339663 166314593 553773808 937788640 290901583 337578735 968700891 329811356 719458579 705395115 36846577 526480561 453215256 289344660 81854124 666573712 535657006 666486119 230637009 568521561 558932824 931907037 719979222 267302627 151795676 838197327 940340950 207576775 364957889 804578528 513116 473992830 603864820 627811450 884489247 733485941 110641186 835279492 88337727 550161878 74185659 726819195 302249977 944138830 878835018 173905917 542167539 25930887 293392107 802993649 749341254 44357100 440827358 755466496 421869604 237039774 204086441 347553839 10766237 761635526 844990793 436158809 819452870 784622025 389767179 599854437 355649942 49915337 64874410 207781961 778949166 671908798 214317067 420826659 258881112 526154079 437914464 47337380 836889581 105075636 214468360 687968153 567792595 228509375 711523660 985161447 146726616 168695828 112407017 720586494 95701758 930502142 664502311 781126782 673706143 567630347 378314815 905643413 154215887 836953279 911661780 187128144 975533501 852584268 824818002 56947442 859458081 733072031 139865906 387262947 56139885 283063029 405244958 247539211 606947967 719181154 27186117 365894253 984051746 722464378 676235945 212485296 1241928 358156815 255427244 568050251 416482996 424979650 950742162 134301065 742376683 275206527 825154914 197419674 970020929 85710934 223426172 113392022 693433028 117507051 328746854 101220076 685553294 309954226 791634524 923519871 307266739 263418369 632421327 124509660 237474966 680516362 16936083 700120837 93732353 277730787 850232755 139363745 799597952 81684285 581347061 614197760 929652807 845311611 482263139 245087773 588054301 67710254 668950503 793668101 513834678 282920225 759103437 779579062 230992533 713529417 663815198 509737562 682861987 767515622 567293020 140231899 788286081 729774590 37192565 167959468 279092221 913086468 335591680 914636610 639893648 111894249 743823585 197391552 106833850 147936859 746873647 821490664 190485012 314350063 578258300 154071385 823618538 235339590 582777464 137647489 886584988 937525508 664852869 780699866 163513024 556921570 829657969 570672044 893780934 977362961 882932187 60832489 237730545 333630382 411287111 764279730 440060548 714963928 972573135 723051421 709445357 552910815 350260997 321020485 90293485 671304166 696006403 883952310 697230067 541323500 373419073 11387405 881311537 995158136 170825723 293357322 358462939 890823913 140423230 850782115 620954141 899358074 834571996 962929196 510660372 786997265 97881765 691970347 867603743 28631728 11956661 804975679 868032571 465845186 861728016 58987894 916109927 1112812 628963793 582960843 701505710 257244156 117078930 427904933 800865571 978559960 345334551 704772081 968182483 721263960 894223976 582320441 849998174 620330496 636951908 859034618 534041148 687480116 447472865 995459796 426921423 753627720 100584818 18768267 954175122 369534107 259724582 204594534 642433697 88110585 601183264 783195872 30610222 647853323 902247714 516185708 113580105 669112804 108463066 929334937 149254899 41854657 934006447 418984398 849910366 438128177 588532879 765029100 981459272 886523425 779605330 224890853 738273407 193570686 792662043 738394291 719950429 807703028 595237862 785335142 862594652 609536429 106050506 583002381 842250908 838997401 385568000 459615008 112936472 303574045 750188060 247612898 667861819 725120670 135419765 135916830 130102790 2676773 496740636 811437282 707704659 374704751 40885074 725585127 405833416 516942972 49716421 71575769 841597046 385166003 766146595 346365270 609583733 396167739 716458567 168523049 501646525 614509556 15273919 510334668 910213631 426921233 798257092 915449771 711764000 857009727 298967010 118495926 824778132 340611944 759193809 395622723 23752540 899549955 442725644 248585503 337563599 896754825 287800930 80334043 937530888 727905268 423690462 988095328 216519131 855876054 608298478 81821796 173580766 525851383 778071069 245730810 255735380 658576511 38965739 500978019 790578753 815904512 823608601 718029008 22582335 514872261 840556684 926728469 853595328 422431165 464673922 303065870 161403909 471375271 933631815 522092580 860515023 682281426 297584109 864350864 867580893 160054635 837828486 579588081 705699878 305379036 506637153 292174757 201200759 910749588 119472119 333341785 321946292 34354517 212256009 466190880 955782676 971017257 126983753 799970584 198133350 400266853 502527375 988646147 352184399 684955731 174994735 411091516 347617499 378522882 835985208 327611370 614242894 180157204 860670747 534596125 855683664 999791584 781868975 795821938 534241530 795338749 887183854 608008811 806462286 972338016 142735204 782250718 744841856 273268144 935599923 896804379 76998480 486132187 353390707 967374435 156186936 70495011 642833247 353993077 763089560 132915286 208498596 182106339 123282974 654748737 35957172 968227684 904338415 663193523 12296988 359033967 70045632 17503368 498747974 154159652 20707128 899947440 190371049 73836818 369513575 773827217 734231427 366061510 59624584 582473288 798538088 248455394 330181682 676479717 410853830 341672538 656024465 646235943 799813048 785387048 329715756 816694771 763123972 770472794 873134828 262021861 308736374 444213041 566604377 189381541 230902813 725172921 588356336 127848153 991418008 484663135 142097860 848038706 833560169 137617817 295910040 329345895 250828553 101414233 304238131 682438905 226126710 385688176 949562015 314274296 335995834 372883816 750461242 943655724 978904633 984089322 422280992 100350095 866810889 785406105 334776816 334425116 572108465 404761605 355393579 939695218 86655129 762874873 249015364 143803525 493203484 546834586 330290184 170246374 266999892 780302087 392213614 171560923 38704536 562448745 515563258 710405250 826663253 509394062 398719397 290918951 964813604 713132149 733560105 394379460 541855404 326830321 718649392 559466099 842521657 345884019 237595841 306055395 462780373 774501443 639176716 688994364 771570673 72482982 772728600 750688466 659790125 69560863 271816008 793880999 829468721 225978437 830348971 912904751 573507921 863932771 504520556 141877480 692032542 119414447 784964084 470390641 332951060 103714937 791744153 644459328 205287113 695871946 486827464 930679255 272823453 755623840 912997065 762205584 249118140 146518205 14074742 548087325 858278721 401599432 839137392 850606447 391828992 407181195 821185632 155243558 434822746 292627163 211874458 909219016 101403047 824592314 207093274 230487629 269470788 287682621 133282372 652556864 663187769 154670968 494373357 803786494 972620822 923891610 270692634 31449670 707314735 335564189 224139090 468396582 686275831 141769110 647084617 295355374 905782741 252945322 905949511 262701812 854718120 65834400 683187414 912115257 955557580 836563818 739890446 761579276 100156340 770372017 677948086 961505310 168813479 58256907 91090922 177842403 34989545 225051432 792426576 605333012 587809757 992646391 340238191 541011610 130993995 204392761 6438348 942697195 90285981 17694587 957215072 55581765 307505446 674758321 58195738 652028789 483005121 712727769 833055733 148636315 391806102 269575785 877412615 778335256 389181887 815479250 826633954 143435774 842508853 324306098 618333081 136286916 286565639 801772024 686963580 345966206 54855973 758828558 904489582 338178641 95512287 18086174 56066475 453475476 18578945 884648538 62584983 884605440 886682155 472494417 178825862 395256176 930586251 975998813 211346267 120568687 565065619 132818080 130205369 961505904 977928658 475971246 118053788 256123844 714778728 373949169 478864047 614194136 180549026 194773351 152150897 928804922 264339661 564145085 360598472 665479610 365516941 629908855 768811727 185008998 499386878 960796368 753445352 677571310 662987324 536747050 693124244 418346340 707314583 437477987 77877346 100552166 585438801 776752506 774363452 471512227 400416196 78859981 506024938 591358442 610618211 345912064 933937229 694089427 248030182 991151263 661994898 471999177 487656647 688833807 395326982 409694687 400039481 824319943 488370322 655074010 144381455 157940341 459047306 840616082 632959233 730369756 329890951 813498642 580124717 366616425 157902735 195114589 875098541 196956615 683402995 64361551 80775018 856576825 410804128 739613787 301649307 806628549 876768656 455008759 860536559 337887260 646550806 292903468 792127582 529140131 616902271 819169530 671193116 621176753 949262316 189892968 285667903 847760703 733260839 205783282 784326188 92642236 236823886 385607912 920395804 158456265 274376765 369215083 586969046 370551874 991748424 61993035 818908727 652553310 958861194 826881209 788731662 482439306 406570128 502489622 331790120 296294246 265685351 429018388 265852636 160271429 227282860 551820661 659429988 727552969 771852094 402147269 688346024 180191388 812230714 25752172 166049421 502928121 711328497 633254934 310892960 509116495 375397611 106746523 928569291 808403243 616258994 343992015 532106947 837976952 74401556 953564558 791784396 457853274 283013892 729313414 981424195 222262116 750768859 109534313 448697929 165055118 660887349 288341218 742117037 492011608 592545567 699516393 674172209 262688462 997467223 979039195 862391103 690326915 75849245 171684599 485384959 147056236 260200311 863621239 582897259 185323162 41556415 555423278 167253999 671854057 36861426 625376415 368611455 927812789 741206533 635785686 186980471 320809174 222741308 629535092 6807834 852353643 403781848 467406623 842701997 385067726 520767890 186112904 187388604 122702077 392323357 796520397 397940317 272622781 664742814 502169698 506553717 268148685 895789140 128668588 516960613 879295583 481120807 874014660 81580373 654468164 359982981 763084904 299580331 675261028 528875425 367956478 145285522 501967863 563390999 625987480 598846559 885812097 504454564 43104623 524638736 539596210 19177241 414870298 352927837 405430493 178114330 81327281 379762710 425224500 770898054 588688047 323679936 303973624 35728991 104590182 90996816 755466899 179488965 460022390 637299202 529226670 655561540 68033717 633132889 399506243 513183198 141290568 666540011 4135589 534659742 274509524 271400299 893233954 553345492 388126838 784678091 653683444 657110899 194612080 621997603 287582809 423269297 911322055 294094627 147097865 833126700 185372871 729595006 156306831 126063409 426885370 256014008 816781951 214828970 803332655 438489544 978081714 708774414 656947403 542126692 51838893 330638249 416517885 944424641 248583111 124568979 378305543 355341361 275867865 312763824 234554536 91426463 406472632 260373016 55935181 361854977 588605328 393844745 262846742 943298000 152928502 290757071 677222016 898685075 800736903 525540699 718394163 990020686 582810761 929885029 773442535 53075524 112663957 35605684 8382761 648693106 221541161 717790811 316989358 461891476 128133415 867940717 414345135 250530075 282830246 366412351 564582104 958240545 452410903 687352509 143817572 535054042 803850903 794013571 670715237 661428876 997540724 991887172 112611343 24521472 767824278 34950912 582831960 346524320 179607815 482807752 203042316 944142712 892970406 654844097 60562776 590519573 282218224 467713778 695756588 82304847 606315943 222708646 318869088 748799345 256595506 729363107 337601187 860675949 675969602 812039541 575640922 305972421 172419584 96715445 450198269 41025240 332003794 638985774 549712617 654832814 790103352 726545661 949175896 901672765 308923465 106121445 476171024 863670568 13317411 451958838 732282652 356270033 546744943 801847086 1780022 266493992 329886138 125482621 375799508 924054377 432890543 492386846 456383524 519120660 376085050 443176884 88165614 756838451 851863421 70665801 230871863 837089231 227731893 991936741 802735472 435259114 780801797 956915624 163433316 749164253 148081424 85588003 484902231 941001988 396236025 442353323 240701756 15955167 965397781 873805474 39771363 685661708 891281492 662047197 984315853 885049214 523840503 616578815 464161670 51309155 577629336 600459089 794933757 881536321 735023070 689989871 611235886 910568096 527569455 18886833 309916710 375191043 172721151 809747147 200049883 573148695 561182081 839149337 984572111 976349105 660650715 681721842 145099658 157468129 433297108 294807080 364635445 28382926 227897333 638990293 953004873 316047793 336191174 585034476 965602404 667019924 872355644 151349418 454661812 88783988 29831214 263887308 51392254 649354605 245198021 674310961 222353646 764913712 844035039 154527214 822958038 409567203 454147391 615882616 233600330 398961989 354776163 114729226 485744515 16812151 922913221 427687003 279383936 293254470 231331978 655737224 209061216 751920376 398889078 437498213 28509593 46819591 253070275 980059507 136006603 719013510 365914336 837821286 860262844 382326662 823264527 298352557 839913475 997451848 989964193 129306205 733203197 871784657 888837087 543596009 438632976 470865180 326853662 144198935 743717603 163873179 454728112 911307705 916597384 942260858 229162807 494697185 163539658 840041779 335344552 912200032 972660314 784006846 776082710 673393058 457993505 636899545 200067605 147366464 381701773 62877695 435758570 364328014 423044866 851863613 120248780 23358947 189034415 561204304 513477713 587639699 886403846 803285665 497369904 265895125 873179668 923824461 936858561 658673910 226548290 966272708 26829295 87841305 91483648 751161179 698398093 444686131 73166695 157895957 964594918 864959058 76172630 319117545 272712929 392316061 51666750 508332923 752825099 626151214 186076839 6866820 786018315 680670901 877181949 522603043 118653724 314519628 657425710 198370964 325342852 871943190 876202514 903001091 706687696 336993537 393245483 192570718 638251489 89415424 602537774 757089429 408960955 707243617 744510174 270645846 768583422 860742137 240255300 312239488 737850512 383091847 150098832 600806019 129201983 398087832 172531344 996599709 801356912 50641719 531315966 496154076 907461547 439484591 900768991 454223765 531742411 902210079 620104395 520434950 731866520 485318545 828286365 154141501 157273961 650413700 145601779 681761730 878044291 362215766 305603087 318065119 708023471 665329576 612700003 681806417 609274997 694779277 722578808 732400398 943750923 687664967 819781775 641614613 583587903 747954299 714836014 266684197 166083615 219355915 911430621 932309770 996806148 622420741 208190384 846090749 261951254 270383162 175763017 160469533 477120976 643010871 855216149 244897645 529178843 651833407 610876601 96738256 804116261 587383780 567444101 316413955 182417531 673923095 839859306 552908005 648754989 779605294 20810390 815567593 702222314 466713743 642215032 72872664 309319013 720465832 532051534 406456409 248806061 333075532 477350520 598487539 593303043 691455093 217477737 667366752 948589475 478063700 706114941 568852636 632119365 379378646 736007765 705241818 657550998 593417459 701540257 264290045 880763287 729470551 779523840 662487183 753221561 973590266 731485140 125418074 773383474 959464393 146551365 126202763 393319646 614547620 388017602 31455670 293374167 867624155 273103228 980801145 675911278 524881933 190492600 492284152 311705265 428246519 21780507 833872680 86918791 662085237 443684115 16893865 274007445 418111341 932022275 775176005 774187778 416438300 340556438 195484061 69091351 108693546 665928438 605978662 876346478 611849874 229483170 920522851 584171163 337102213 599113668 644621646 258171978 267976190 380240659 946069010 702802593 774210809 829787828 397217975 536967938 45794019 11333894 305552829 756199011 38124567 700146823 415751217 58102401 44479175 612716574 987227180 931616352 28598837 562336836 324957028 313329772 338475924 991484471 866755090 728279998 242503194 112062375 85627461 546131555 762473951 290251634 142372616 886409691 223177988 535640001 343323281 349186862 42485474 766832056 425967848 327466022 173318299 134452325 865878382 577072841 839712880 702393912 963337821 346267835 142663672 871988207 590845799 595934906 371656343 870692022 594018651 564722464 451143535 81625618 64382283 430060102 441946926 523583169 778022747 731636989 326940381 647794793 458502422 715102181 290066286 495917867 761663960 119905760 934132845 838267589 157542522 158688462 798705441 354021047 566530244 377270949 791000619 905954075 257405650 436534803 766974491 605357984 347127804 593213120 752389413 718456117 347913399 238715878 66398257 677042299 73469756 651579367 480686968 939929097 976698365 805402658 950545873 116470233 974571982 705572426 635970469 153064437 770307829 484757382 473589967 552220104 845797682 216781440 83482390 813305304 199632238 848881184 8388418 155045836 567148290 97552857 642230911 787980470 746744534 609267415 273047211 64934877 863288932 158632983 859903804 377784561 832927602 987339131 172693068 707531614 269615840 317560437 537940565 403845039 972562256 940566391 827320631 667457183 59344389 659656051 867816868 654250777 901358928 847540348 512407878 17015935 474533579 63589390 775647244 382156902 486225152 39379713 794512834 870338018 606766174 936185200 548394257 324184241 848387066 44164985 656385967 928082941 859617869 843599330 637915161 540543385 8593126 617112163 888334191 420211386 243376840 878405331 260679449 126555589 906464253 150799998 690895221 445861655 798956197 163373166 397380891 856145071 992766338 495064300 334096743 541981726 783590187 558401593 108107702 133179958 522101786 493848316 227625584 184335330 342278262 632211746 610732429 991166537 139039290 381242264 41332516 18157566 872696952 483700994 684750103 767220879 696056124 875596976 127822402 344307852 361116768 398194809 29790781 948609949 817844918 634468612 127781941 39015579 822697633 126343138 593859970 650735472 558515826 512988353 573462670 146655457 252015761 103414934 654399461 72167988 956154665 312707260 315967489 817094088 438945762 47442009 730319327 108634889 134301807 579993509 370946465 924282341 279228566 931705550 769163 265161927 259374340 891621952 909443025 544072165 443993425 763593203 44890032 678082560 620973864 651044253 936607394 100119522 644962281 935653949 934384984 33439192 229696386 259545802 874572425 811411786 175428029 432222098 855137402 552906149 45822181 9331813 279578266 610713740 114601189 651450573 649654461 266073422 848431232 877611415 179832623 775245912 494935282 993764943 354773032 914948173 759590224 150414773 272260744 69230072 364615908 42018328 421456162 562738921 935513994 217720395 641023111 759893659 104625575 975559494 655309150 978778232 844425419 263627258 918221486 318583773 213217680 167620087 970090001 478767288 236754665 434764070 745502505 394450825 33045754 630364699 178856565 87304902 665715596 984893333 402231578 544855999 774133086 129241662 768562392 411877264 437692699 511355255 209294046 706641818 142322104 800001427 341079519 663400601 75133384 194496978 89170677 383674069 712660278 241191088 161744321 999510436 86188338 524466225 566645244 566569157 113918872 449145676 820133486 40509783 279270678 501824201 224616736 261829205 135675685 156844297 770905070 972278098 464526679 437694902 624004477 938904324 229086946 928253563 963620471 910454477 166188666 225111410 439544462 445822923 654133459 884113105 684520002 724330665 905009962 719737713 541147015 904573499 241983574 807726843 943415586 439052044 454005495 774583310 943064011 685733383 222916354 234530994 207349830 769390034 639183584 837536416 210749119 460895862 657732527 73567894 921092301 382495462 734515146 877779931 615963259 542353417 729625310 524845910 793153256 396964915 548731001 331690222 949937499 365507366 647656991 511726886 80083117 33946281 79148549 9443526 810835858 445641342 415396878 270767068 480181125 945632620 516602665 727887470 223294094 448172649 575546955 116398651 12286924 892677371 155593227 10381091 842414305 785100314 649469545 340816919 886713505 556508962 644505951 809868687 899681822 975001143 580803583 471992110 64241397 449859172 636869032 990072420 258335645 854491361 184932866 963173733 139587942 855403986 443652883 380247765 389135868 217082727 923296399 442054247 334243917 999172460 652263837 902109338 618396824 402357596 742285373 276401043 671903829 321506460 917183417 416377395 68604409 158784100 908603080 213225833 725305255 440586442 636092167 139951988 263019768 720477561 835434178 171080987 848923539 170662182 953030408 181193031 713888138 378149192 391937832 239525750 677085888 263445014 702015152 521687585 239313879 670798256 415522298 982875252 724088023 796591887 131929381 79158926 421882615 380792159 710141195 693182776 783461621 913925349 48519443 149263487 550071062 335250078 938772868 404295342 970469478 652638782 382440140 429111108 516900588 670138281 294949792 617774736 35986756 754204255 645803773 603950288 4051661 277489586 901674971 209284809 43462658 144288983 731846784 552071240 689325851 768428872 82981641 680383566 482063109 79636075 4773885 924181015 645953856 510521156 40726215 237080170 534435234 868156451 570371834 196690481 800007131 702677823 344904589 146914260 681503514 220372038 293667003 11198421 675857245 607071954 890150343 313952396 928205677 477798855 592971850 986349775 457018793 516501483 783331262 691920267 243705192 362402639 271256910 884928349 684032416 400534785 948324737 170698000 295245090 909293727 866332682 851792278 520754589 72052852 808342394 48436591 734384436 773144416 957278001 99358831 96110171 552661048 562972593 810633743 555210576 999591012 370998509 683257668 530712542 999550255 208697881 255407389 875789558 37350950 752236812 951659421 462476332 797275120 315678196 286332159 500962618 652094512 995785431 253817150 590760613 16795713 381130761 832785242 127097995 204559441 626399187 216907918 728914729 837659694 830119958 737042262 286753923 332607649 20881081 919014526 749038892 193140554 665874484 831018867 192028033 756560010 71715734 179189134 747612978 945572764 375910674 493511675 60985642 510657590 358617681 895142190 369458754 953096137 655165766 472306602 805810308 143529575 747520798 210819256 941517002 296628712 145871634 52247436 244585009 556881397 756150384 810462474 887720528 196536381 969894770 564490065 295483755 588736068 433663503 360054253 826555723 435105507 266508671 256710185 585364866 806982066 649375785 344971007 103835497 112607531 711200646 196264836 310696409 512465044 710327707 229039843 371910400 796403551 2292728 50983823 747818337 549542842 53410523 655929306 818774347 779843702 318593681 741990905 827247073 746617253 939951984 673651104 356539191 365070166 634644638 175129215 54098187 412995121 11055291 623057451 306175686 863558753 305432557 588350243 460338711 392493656 75674924 865402549 145204755 647369487 510010167 936331857 954243391 533044920 524619361 326747302 202599599 334207383 139841351 668386102 562352198 897846903 88724419 299593721 194350030 62080694 211161071 482218757 73347133 387284465 608381835 367883706 496259857 239429195 345403894 145716958 532404355 451298611 954154100 437370889 80459675 57066439 942115673 67841033 780790996 297721916 5810633 466306167 40680712 215096287 740479989 748056485 878558088 90036041 266539359 451493714 134968465 872163786 297189248 710854914 668529248 262557972 177338362 676355476 750169294 367264591 168853527 901709170 960863159 957282931 438037182 937946679 623733883 751297578 94898562 413254691 844010865 227755485 807370958 362203188 209039221 471011639 693854345 634948644 557868437 78952801 84838506 615070268 717741584 409309225 735267527 917695514 872620956 51047597 374572835 567422231 311795424 991217482 404300512 579799046 325148115 816591271 203383681 804477610 621134353 957239577 557749312 673952732 467211367 306414138 50509048 609932160 784449263 412644208 619119023 262576299 314080393 425601673 375780355 126644404 682535055 713788956 202053184 186163143 742953597 392410507 309106816 392076704 729125096 867761622 582867863 400441537 368301849 972432204 854132181 599616294 845114194 532447773 764819641 43464058 900800465 806762085 622310703 284593435 232075160 975462280 268131077 759027431 878709280 546046223 6697968 175955981 525584632 21718656 365901891 158258644 175356152 599897635 875316754 562733468 30814626 666876620 240607947 355559164 314191463 675144699 130802254 402160417 553855458 485434168 315318382 105917434 663783187 325638701 425092320 871499844 623444173 772460374 119337085 74147954 371412360 155874761 411089769 36625379 156636362 419487351 773547069 337324279 791033982 219047394 770598471 109422328 520276147 825060172 21224654 108224509 4375489 573775933 337051915 190062575 593421247 244246595 386954459 388550713 88123543 243950499 982552224 339733931 514636204 753162868 785512184 990691071 54158408 777646735 65478641 487683566 876953197 213873108 909982881 718363948 80099097 678414633 279529188 568328248 769510990 375669969 5554757 272451277 413720547 155952050 475617979 836816816 640730388 50428951 341613712 513644945 601278568 276355360 32345644 686503935 292353506 361747930 570457109 662591737 446061921 874895217 966644140 276256939 26826522 807078510 434847016 821738292 366717154 733841919 390331205 501556999 302263135 718970508 706149369 719630124 742361162 302919627 322232308 208955624 516880670 903250477 370972211 357444496 346167465 152576889 717947001 376894082 497309701 959096344 365630271 828048625 859563352 532440422 154665718 185189695 323448354 161063280 69749276 374184499 818054004 756389571 228240270 61857098 592154611 508143822 257624681 723304110 102077946 941052908 355623877 712049653 41583857 582442121 747979486 663491474 368611096 95017814 718496445 201571158 768021614 534835127 157609230 361039386 413656907 655789363 936695163 942814219 164625588 414535840 538612043 42738471 501950118 822653518 863706331 574946253 9387547 736066299 614358251 66768908 402821234 973318338 389336266 770948387 819283737 548712084 380903066 424476822 606430997 362833377 924455309 26326095 569283896 216358429 354204391 785854839 308919795 757909963 346449057 971812744 938627207 374399388 571304818 158744561 191120941 245098772 604959207 544056283 153868141 736105432 17351834 861415838 979516064 620834292 907057967 967659758 806122976 977276103 993984079 240238242 48056476 638781845 410505110 10821283 417510524 814148619 348405460 103770448 322484999 656107421 30232529 326402476 81839385 223279679 810037756 515760037 789910193 410667589 690895809 435730411 319060378 281398783 490962372 526493685 163594787 943170290 258112370 297006107 852623217 747294799 57601370 100690397 774232840 116479953 188038545 106687568 754429860 772487198 492645174 669236587 585516068 163639949 814922718 823912382 519626942 195705391 464206513 447108873 528928438 872074393 201899940 427814875 598915981 926127880 407258471 698334321 387127282 78391824 938169015 436587052 238568855 135239551 693642594 223152999 467677840 595606975 41836966 578183849 700554846 919334399 589025555 937609079 484865028 908673897 841406277 658476839 780404008 9816168 671762121 340897473 27318679 811532478 384688848 861775159 340058539 668281488 531884952 564701707 750456881 982657133 945415975 702919021 378369496 624290486 54413755 630641816 30911274 112919784 665814156 793374279 32256685 123060918 124997759 244499144 235788945 190533905 526437432 294610817 953529549 954255142 979348153 298148151 688006243 548016761 19242546 162884870 731995847 515577341 437501743 195641 764682467 51175955 472067617 802522673 652713409 523587195 868590763 995308558 531372946 697815708 84288106 176966836 471976412 490254 187706780 284865159 322537313 880415196 761241658 387090316 204151166 386349312 660118396 161504191 353756909 427246396 37372248 308033442 398738601 237345122 839953767 800912897 134516771 556899408 656231249 998540914 469396222 839224077 520845983 320729054 434930122 365078728 360674753 720876184 212377970 433759907 356934263 171203639 832784621 779277082 461029763 531947353 849049536 597882500 567784735 90132106 366362428 320346954 271072085 947342007 456625871 573314810 744668910 78836336 400569092 466711065 933596565 446468347 316955083 856832000 146503998 298351614 781419976 698018154 587820941 616615856 662274053 847421312 413066553 887461244 891363783 390738505 961525844 703081966 295129346 955971873 794770233 725870864 166046682 980598840 577662081 541701641 396517370 829478755 737779165 32806738 89340456 958429639 698425427 442315729 70417125 438237980 33525015 334738653 756318143 418162855 13829835 425977885 476918420 531324928 604947057 946746080 508961190 216104535 506124355 283256193 968181408 868881177 189291679 727165694 16868051 566246715 878938488 612287175 206914283 810674641 33289801 847767228 905787138 34131529 161601999 53477920 447644128 413695147 95853554 957187026 343632795 988944679 597400583 466748291 143872175 321351887 676778704 13491361 253388498 386702973 967446071 370528791 362300972 108526991 962164862 471778526 227050389 122683160 548352020 887164646 521054924 484833013 686650658 999977853 96134124 563038375 792289659 583068741 190326305 25538670 994171528 233778400 517775513 539084623 811067201 191694326 204731575 712928539 173696880 196776789 897592076 705549215 572024662 502587588 100475750 114691031 161739149 769358691 901051293 73118211 349490932 626754530 925406798 786218444 446989414 888515580 407969421 887571094 320959540 233250295 601742583 65739529 947252016 350125844 672066659 172616810 22865121 25269790 513655987 986900086 853061883 553951641 732151431 99118517 39421582 563805172 997364318 615697949 995876749 426040067 157735307 598314930 49415942 766673554 635628603 946019342 550439223 238963649 499947936 975746331 166118506 591135697 797565002 850833209 954535123 208131498 52084481 70236895 645231923 307712042 400058492 676127234 223302102 111251748 599239096 564341461 910203172 582214184 893526601 934545921 92406532 452599535 708607624 972106587 732024269 265865071 764616603 653751612 985046215 602654085 817485770 567576920 745988231 975534213 783072229 721730745 383075725 588364199 61745281 9339966 690487784 808944342 369568502 702370485 175341071 740549238 511850086 771138691 57630679 835869026 529447941 200594169 760860077 212765586 176335007 198107771 87203473 753900887 468403283 718660798 701862551 192677387 474559 418955713 333732680 167330167 522923370 403067645 843243926 116525219 235489300 27828367 275816428 584404482 874732140 921783717 570840371 885446049 428437265 164363531 159895547 337820932 737269059 973644726 810654219 853669906 948165837 915123617 927833453 546680272 603842340 589677869 842080200 396985895 212093743 638760401 954573888 933142400 456159255 85394557 830966156 659705616 34836239 404224188 106567322 111817996 29782207 615557343 341878915 744136476 71697556 872471386 482603902 152283455 220739529 110374277 627973926 108425271 472150335 882344983 55349255 168682428 231780122 839511419 967180973 938254499 769998591 393697013 340875969 787136067 11302157 225648125 307756851 526272387 66217131 586691800 765374131 676702714 128255079 775304910 524004083 783713155 51144891 755201593 566377189 98451367 680026334 110945414 52335851 286195538 676119701 967030642 658433000 454503750 583169259 917213107 719837775 525961027 735230585 492862405 106552949 610586067 850280930 593902973 139918602 98969571 926033539 561409973 497303274 713269634 689022919 20810547 699912002 57017569 263373560 785632661 415484811 641168881 122848866 506282293 787841897 574073287 376130939 615261969 881586254 653325590 391778947 542254103 684131372 417059593 370158764 328901657 227354246 875506379 482512055 376187601 203996231 979862733 379710269 706372174 258276911 899286256 623846436 376967555 111093274 247578885 170771319 558017945 540642445 956665416 669636703 485304669 140386016 583102856 13541268 281086866 163521592 143455788 631794495 809606958 826566968 570872825 147421741 756512293 122325033 716049908 515037899 258203128 684156822 344163415 433316159 986709275 71891565 87414523 420892048 996438562 852364479 832114850 996506121 945644280 871637538 632770860 423191285 437980120 866576694 739556581 269559315 884038476 695863428 201519292 404691121 418180695 73063908 56973304 133322221 381431100 598944399 8663156 610256001 514237640 888904130 695889838 136991675 185562277 170543245 210553678 946637736 636658163 759686589 13634515 996633546 384138354 29978561 796479196 312216982 27882621 721367352 163807227 673104709 306748039 573559062 572869748 741801024 540811399 926498642 928406869 438948203 232731575 422868053 459519350 254259006 458862675 468412521 805184923 883595746 586619575 35970319 124972163 753923458 487847069 880265694 342891839 938190606 301121788 340404780 157133000 399643574 382101409 637023214 519543338 226810390 514219867 934167876 670487070 90250732 492549692 18459917 530156503 173422745 410467382 138475165 629172715 471877085 521498272 91631683 488315675 898020229 29810169 478661888 705684123 869752891 144552081 663268495 668923089 122733834 138226158 42358503 128908168 139142003 92141677 610495991 768534816 726420674 560336876 585972533 738007067 699835521 780844656 625166902 225564506 863209207 692308589 937990251 549693824 830578018 108398750 34284542 316510747 966496863 896513479 673682198 604731774 317043945 969445425 19782136 900981912 170472816 356928826 687525650 953763369 500584645 800215661 281071641 372431996 621702797 563636805 317354562 784703016 271639861 178345479 88432989 436831586 263446598 164552205 51723695 261295898 481725369 500174622 423910535 906189408 324744356 817317756 763376111 389703365 95992276 506002536 32285163 579854564 889353885 410685643 826759682 468817566 619140298 229212162 697440780 716773785 637198242 174298042 623540722 512338457 733525997 350873344 784308929 22912915 233789507 337684282 396141979 184044374 347314322 194419735 827596503 203593222 978268896 605024229 115768413 834671309 984473725 936747982 569979093 53426381 421162719 719961817 972073385 338340989 873949686 835712432 460040009 104535206 8750335 33575670 139495281 575377155 761854841 907359058 283445590 491375406 390917599 924715100 314395737 526410051 477926206 370276168 470070688 859530859 440089981 232641726 914608060 184591373 225067361 65575260 609345176 852107897 857633531 520989127 171665970 936863893 92738085 921331223 796764957 160347592 6504334 52068089 997209400 362282449 168752448 270107342 308904288 331009607 671536999 342993698 870293523 484563777 312776319 191483699 11503153 415378292 274564137 68027169 388445702 371966026 153897638 106530093 54557502 25783835 151860625 989873652 45655815 4955475 922200495 865630149 408042256 677756625 127944600 767733653 74895136 672851223 548584285 685528931 250075721 861819127 685789014 387064190 888191538 163620624 849306606 96075610 644958825 879666630 377652203 575443461 918273373 933595987 367162109 823118136 101527880 981937070 57461768 613354140 877200450 948975303 279437478 953174881 735319510 521357432 895236539 398344927 748878260 184186678 232348813 741258283 768909145 829644096 645407629 665334322 558402059 409163512 907609294 279486684 524452114 365799785 798876633 475940691 650241759 228596826 203217782 492868049 792598519 543529134 577045768 229508550 389526801 347686754 86353967 777890983 827703441 491084805 322512678 920212450 139652865 304410673 345302510 208738963 404462277 46402297 30419089 559564922 910649933 443458564 457269209 661861872 183715239 789861852 416130907 454731900 320797197 579325704 479225216 756606940 787195237 195564304 704986134 586921860 255395756 243776664 14945730 314372762 747556604 507088146 683545002 886607451 644344022 181178916 175477202 467266715 369827646 920381481 943328405 611340643 672715596 216980922 671755626 486823305 82730447 784046282 771162406 923244006 379748409 818120242 213516095 35539505 778569610 675956922 10893562 748742831 17926464 567959686 408818800 839306556 421143889 243820948 818955164 161461293 281366695 297461842 629287765 263586723 647223334 594820471 390522737 880855444 378234156 16729265 542581546 233184627 710754881 675118908 831412603 120432166 559447480 462872873 262497934 681439961 466329014 664211377 740117176 956416859 930627440 276719315 273772432 962568032 938205858 595127566 110982080 19535925 394898705 506568762 212486546 451085086 436879134 523871174 480077571 462177493 997440919 79982912 933250338 529156541 932043945 660775518 595145643 350961202 178609781 141784287 550849036 904650247 419370639 962597144 392424594 244674227 48823499 607702098 785071298 538262506 341180262 79597760 805930771 553087040 881646378 818786910 680115175 948004719 36119857 703384326 515157907 464978301 620117167 750645727 311305847 258879035 69703249 516663581 759581183 919892549 841905644 447734078 397074074 188577360 297184797 544292830 373826270 389261826 315311887 898287498 107530433 673028912 317073797 808052101 485055964 443343222 853403406 853847281 790902028 121992220 50492606 427595148 518155598 694336242 83894180 865322687 616790670 621209171 485653988 857009905 595757979 862585193 215931412 103924420 348688313 890882361 368003570 96255302 520271933 176901740 912035999 653194755 282198729 560667696 441926353 664213395 791913153 651977602 638638998 417189586 648052775 454932093 600877738 740156825 161306598 309285359 20398479 924617878 747577295 391459829 133755140 211328404 913205395 160280119 932730994 436310259 859215997 757215729 470972837 15286572 603830272 627134314 532302651 254162924 631903548 238089443 11231067 954006391 586709187 907586621 414132323 975420702 835172475 705515328 218886381 158185681 277241392 69744295 925679695 511331294 249168846 236016965 274022352 932365990 385985663 800106852 386097550 905175361 781070989 863981345 623284254 264486652 663780016 850375749 152012244 691995253 94794852 67268584 559967068 873049090 690497048 687091328 545613228 519448597 428082109 513984604 543764661 415375827 818460504 866712090 596996075 512350906 610784512 584275707 262564839 375805080 675047665 708205383 713325881 333435405 683368713 374839763 175949232 528674492 767098857 768197394 581044491 599071859 426514817 264284969 654554924 503380330 54844649 906837689 880035748 751511865 105813106 79890811 43000438 778041958 956069507 717436400 788546138 647653864 133045064 319867379 564197081 452339144 377307663 750708223 958526234 413978978 170399153 240108182 275238201 933965816 847849715 970905387 206213894 32575711 989506268 731794490 173909766 256882824 276903764 686319018 514074365 155431464 993770127 909659561 631690361 39108411 258627239 348547096 478107299 284602848 81413352 655378305 540177357 904846020 127264036 103071519 385110150 69535538 429118913 487788520 422255465 855422557 165234972 508847336 754548274 954989569 669726692 908329973 830555684 184579070 491649093 933600445 939446681 185571712 473702276 904249637 117015378 352620200 572371158 487813471 610408905 661386491 36903239 836833197 906163543 182127154 590937522 657611599 530238865 813463085 284431415 946621802 588326248 544973872 31469100 781876407 819167984 288293573 903201087 958290315 349563404 913909808 435293000 85755090 826152555 484882599 773922845 906582470 952285906 3736172 138345097 820916732 292809057 370760304 945394934 537412793 252777218 679721858 414674795 365502856 454765040 61083317 755003723 782525066 630256272 683384384 25181210 671977282 568658595 84674433 322091734 663395998 450361530 262197340 84152933 56044614 342660549 526544545 559949677 58242510 282482220 188210987 486014941 294511964 245948578 256794860 127824726 53160663 848680591 805082382 222042421 123100783 374364473 838140677 733866328 654830843 450443809 191868331 699965308 401277384 358125928 89571419 723589657 333472299 908317369 352477906 220349159 144261518 540475827 73556800 144224095 402311521 404607734 582396877 646526576 578194296 374647679 477131019 527211709 330360023 590662826 468049612 637494910 885305536 155537524 485039083 936446954 300951848 659364696 919271431 933615419 260547658 864870279 986252880 203483901 618502873 476571685 627498842 460823155 238670174 487187523 690803857 858148031 15070626 375305229 697489043 985490026 649764131 500592457 188022244 213200208 344044589 563431326 715732790 989330124 647683571 204333901 731630410 613942102 819054756 860404841 950747096 818441288 991268091 997042797 340785665 655928017 126177323 15147113 937948401 480378498 561056406 985858327 362990408 410962626 897021237 360334035 292785863 900025781 880012988 751660419 359823175 24281727 526761962 672396107 101305171 453181680 30145420 808130949 470767712 530647593 351467194 926921606 610692053 980268016 657891482 554692017 154367467 258567411 180716533 483121830 124941108 364110058 672699493 746641418 927446691 441179945 47550988 130219710 329158440 303416777 785912561 718178885 257892738 123666729 543043246 389723122 65579589 829743260 720022459 193214940 969318906 101722721 770181987 94182938 373160912 664001071 670809968 970144206 260674559 74242478 878209139 695817284 917374751 985336324 526037835 664234495 311030644 43004213 508933882 713671302 791214837 397897789 816810978 325330190 43733015 56414704 334338931 338355638 268969908 238541489 936551347 751877639 995535211 691200287 96446254 296500509 494995635 980075250 837863767 951265012 658010639 563175617 139117252 171322201 487781089 415212816 19445741 30551590 858023574 413984915 372444621 746832349 455165613 528376769 899166879 93069308 621578997 383520861 903777821 686765702 601210597 366353964 272273407 948917512 276658679 550333901 720944366 624561163 638141689 166231075 579727887 149023212 970747853 267249632 873480090 597873872 306636183 698581523 903386926 856420177 190521959 431495088 775359463 658213149 234906905 74317808 195976561 889709557 865633809 180253782 38027952 59663934 206164318 873972908 192631261 929758962 939377382 312007897 711015213 112361967 809191177 658640257 525871360 299717491 190259879 690748994 891211398 926761488 164351556 312197393 194656228 612114547 313322393 112945361 800089529 904524971 716520519 424995322 407038584 975572272 589639411 926638689 907923634 679637239 594458788 138006636 468004536 481664605 269983512 431402040 612967117 591220111 619328178 424314796 366321100 126646177 465812976 7095814 82496815 568012476 470027647 694524253 110235298 747905474 851584189 31986090 769982518 741391647 619207121 972623469 791128729 755407170 32924366 797324428 417251686 315583223 413783992 179703658 374009295 598364842 10952777 520338399 80614765 400306133 629861093 945747718 945010301 167076559 231961791 297287466 173159328 245885175 37137541 57817470 894270680 33719071 407277643 490061774 303900281 644443040 525158087 25367705 589950448 111024269 246452259 279862554 714093322 143369839 341361524 650098317 843574492 872594234 350913282 762024599 357519434 550436207 353512158 205786532 657169303 458093203 635301859 148869131 776822928 214237432 434482264 162555879 122360231 83013968 246991072 94639031 23799635 863766278 574860966 967661276 754777157 523927 144005599 482080958 532011174 890602503 106310214 530672289 613270645 884946929 850682421 138717787 4871806 493737746 595147124 135517822 617913219 300359741 73688285 631565025 909520900 348939941 253284753 875663420 263158819 697490025 255143374 419681607 682125132 870938165 148697262 992163630 800364321 47794367 523998330 817659078 275976982 35599055 966271093 864433081 623279776 972109723 967787573 422750892 187967659 977555860 483091061 60116092 25273317 568896844 506796055 681468454 246134529 704078305 372501087 693484447 258276242 708410758 291304391 72309431 12696911 251275187 908416546 648131115 696743701 622797804 62701677 967864165 544712449 376872132 559433006 230547643 71490694 183533040 900109866 803003307 14812519 910159127 181457445 75682363 814953632 252338364 379959501 589553603 896994568 748126994 673684012 201408619 797262157 418181100 998632682 861041368 627237940 789230766 946676287 177688652 542530100 726658677 678068819 730394021 247034886 156409039 812221672 369969297 677388714 141007071 408105839 43190703 414251707 39806707 681526931 295089517 28283806 550436454 902756543 885020925 48732036 639373664 66388795 324435482 200503303 133028389 217897696 802838738 431391714 980432413 249224605 938746894 179751044 31851507 678954736 978091676 224824533 529931971 752185432 874160006 178564121 151774685 935852996 304391887 268783256 157714212 341414967 305730476 471611430 845160653 404541456 26446805 881868663 507342609 644250003 95459255 343605527 382049928 818408204 77188047 36240096 868842169 433663631 543108742 3980130 137084836 490641077 764471805 551514636 689487219 974787672 222079730 820795551 74096380 42569484 129678329 629100821 698552435 506605183 840539382 557311403 145444770 758164235 100357305 180175973 439033110 457784188 366041382 20238189 730730430 354489629 89616053 644786434 389707138 478861040 49912911 540279153 778270402 36321792 32772718 134901067 913632197 585497991 92713645 570703631 126785150 409109408 580194262 197100500 934394584 707302588 623820040 745291461 615957378 186559931 678383615 852263626 407715510 698325148 112598094 549070428 731380390 100812060 563392493 563190369 696445966 326993253 588549932 163554978 179706303 544452439 747339483 787299295 433517845 555729016 88715742 991332715 841675429 315224681 171897183 807601336 558552075 12009927 553813123 117740596 50557551 178886356 840497887 546671424 67058042 802551580 969945174 437466493 684756639 642810996 898610038 442056407 479525805 620924028 608179314 800311695 722961369 337273550 760056290 830866883 344671818 592392717 535199556 919946270 820797086 490851659 952293159 40431743 370403655 358755970 781959805 903864804 989707186 858278689 346522691 376940819 310811667 22499003 798925335 165475633 448481721 88991903 428814290 268020962 934153915 911827101 614211394 435232954 800836510 40164075 217672858 92907822 834491146 217962146 471442607 582092785 663978982 978139813 772797244 747924353 569501877 814687976 496121916 237860945 761867229 17043848 176272923 890210597 206258052 55388967 779462550 235099922 182046979 810218399 349527750 529928590 366379832 777279877 803750393 722677761 864620891 106079356 247771987 333080516 810599048 191822878 242414904 603200901 500913656 373406932 498573465 753385389 536704276 145241594 537524565 387679796 656361154 294527598 609573934 985128982 856611102 638011955 262817016 809332323 784405240 485409393 725270501 321213559 60580404 921777830 525860377 865615227 486012664 247292644 676920213 813076885 366298955 651195476 872017186 677061263 446833905 680144117 584711248 634663614 331544982 355614258 739072108 437610376 376789247 819096747 311776205 688815440 734663754 293734270 718347329 413957904 199602776 727349344 331734080 939708630 826774155 894209438 195040570 454025902 300400005 929143585 918045964 641899066 298721083 100384432 204403930 958463323 59881029 392806227 927312074 842713891 282284289 316447381 369169669 932130686 166677793 784522219 463773825 466931767 254427988 68316296 765238806 664885759 746815778 373058830 23776536 821750597 633061463 40046335 60973640 736864614 836700005 541926120 748462050 668990140 262651548 47549247 626663887 590640194 561576121 592988629 105080433 962327614 219886229 792256544 431163190 762175002 548956322 691494526 138336188 748624770 965401072 284457156 183081625 331518910 141028639 675859178 389472116 893378864 462202401 133368979 848211901 242739222 428618986 891968533 289395559 469037890 912165247 484218759 785438978 589344607 113076701 177455339 13083913 35269780 820987844 561792253 629332092 671118282 413457825 114035626 996260391 451593599 883253351 497493097 480869604 471566223 634884780 633257216 337282867 44185959 11249916 307921666 555683356 40612677 874711077 913351502 947511449 903716608 295467654 585794102 513223836 875823660 5025914 419661635 787320055 490723934 326137822 774657707 54140362 115460721 170789027 66143375 262959261 393261677 318970100 791965293 187585921 965197846 870276882 784130940 716433384 916635536 304972771 744969198 235043839 724182854 469278481 859873339 662888798 419694022 270521704 79007375 830955077 429827230 190919375 76843220 100916531 218788879 778168182 538174195 781059758 105009552 125440464 413921619 760086565 892382747 304255307 928828448 49533781 636514468 245528124 234569125 891844566 937178334 39803840 783342071 708487492 350685566 606765203 47263020 564830935 441483774 905985306 441346468 758068874 953351069 448048618 976239543 65644153 25519024 584224140 261090081 430209887 473073093 876309325 373087746 452910332 906010660 79733267 247960169 864828658 917644146 81047415 361219790 107499565 904090120 901686117 989377651 315752280 483437406 3370574 473083569 138415156 438888320 127624618 223294310 492822249 104568367 306476208 966852304 570013658 197877957 715943021 802171846 767031699 96467115 217822602 975456723 274353884 869826516 232905640 973660311 350609111 806779993 664752781 169143547 524848674 42887850 163069397 461275027 475990935 887895679 548692236 793096335 849404971 109062026 609492702 943172038 538482963 993446617 91995087 61984155 414275211 242330120 275543172 220144681 21982877 338069272 854101618 785378562 430217625 598509228 801594533 556016056 15224280 802256410 758886555 734068137 484352754 110027844 111308966 58637212 13493532 204137091 257372914 871729443 630574445 199091490 271166190 358396833 407890614 885154955 918470654 912948078 396888252 760845867 647148363 839788791 28248489 48417329 354258662 762501614 546234213 438998071 163798345 879465038 547299328 964386097 4855695 421257537 572206550 435868404 64250560 465128392 230102891 584879416 158696086 840355118 256353627 5662956 390477744 572505088 685759611 880712981 687563216 10927321 493729815 630898190 569599883 345955207 393055626 233676366 588704492 136075751 470019959 61808 540935847 923026152 426535018 390248807 387070155 798506987 808121063 635018070 953653194 879635265 652345786 119663050 455754727 846019373 561454672 649039793 659979803 426767342 975940480 22615413 280714113 786561038 292010883 218389299 616101718 484803993 192727438 274286966 140064007 677032595 73634599 835543630 516865524 807476465 256361361 814084281 104048185 995344914 393672941 408438200 441074735 984224066 387789600 201230596 537587724 82021305 325125523 656404830 457291920 129100224 462250461 702509520 596475355 176779799 703683977 68033286 155970004 69009710 179883137 278340006 364262951 547537010 760919834 730627929 65651268 353504342 173731796 47662795 552992946 732269107 529744138 307719865 770331139 335060110 950517914 413140100 371140317 809781508 644277003 305198909 716118250 143356079 205586325 931318295 874719655 855993767 82690384 253414732 798752119 915010896 856535579 444757352 653629108 721945950 444869249 907271333 130577408 887779939 778711739 959337737 654554770 780546367 325106246 875408547 24215673 227834160 478696981 515854423 980288223 112268767 634408000 590251903 8084659 262460871 883942897 42044533 33814172 498996318 348192240 355833818 890398035 476099889 913501375 302858884 617496738 845712049 553428397 838808697 62581021 866631820 365524851 404863045 52735247 211220686 507040896 143280683 700791579 576830912 684481930 790495084 24614406 710241927 301912634 496287068 958594706 571724663 985270717 854040808 448635666 393677055 847457662 607334282 942821960 560955267 81428155 347796716 883937518 606582189 311200740 401348263 332165228 999155259 140929860 361434946 675180005 22458894 800569462 179982089 758472406 828481743 159964472 746488764 935824206 674997178 60003461 674403529 761725599 729999308 988530007 328797718 304679323 298349445 897317584 460409946 383649619 907771679 925779566 316656421 182672028 773875510 729415694 511821391 720658229 270531301 414650258 459578949 864664493 327983612 385856473 672184137 582126885 409630629 867431612 404562628 137789558 100616219 278399562 430586777 420791762 298523908 768356832 351682347 597544023 999826104 194307506 278949966 816613463 980424174 59109818 294543154 471353868 31924263 370143935 560164860 198829692 13142443 119386943 688343708 595269648 551998877 11630714 916558670 353065370 599173007 930907889 622548750 791655703 772086319 577434100 74464217 871413517 555464282 617174650 671691527 942524609 696839394 751088535 381610264 345520587 282232983 822927328 363504851 367350828 639819522 796879465 855423141 197426228 132677517 631783141 30493695 284388864 172532954 116811127 743998014 445025612 976042147 411479470 532765515 70803625 494719371 346450832 442624506 448691096 797309080 456418840 354592678 408946271 710022074 712749283 694462599 8299287 377883078 717213034 370327207 130134256 252303894 236551672 220667797 868399907 206757171 729268810 358072767 539482586 632530464 888563827 687001288 264833677 318540176 896456613 311011527 264068787 513459494 511652414 825378680 994177149 911770316 5626865 476344466 635991465 815506758 771428113 702066847 281415328 609331502 738113501 17449900 400584460 632360514 978222495 733407139 263359961 525175904 24102304 562204920 24370058 951878789 709523936 434530300 456045557 456979517 655778814 495809025 610585850 87307949 521767219 364483589 557947754 140437950 777430094 843989800 485562149 974250819 87782612 249687901 756748162 277597543 475712402 349836192 219886732 444699189 628823450 75102714 338178838 634107854 821718729 268602539 73889354 171115493 898263742 907113658 55550266 426617939 379877032 812734373 352029391 165445383 675919531 329704569 119723670 788243067 873247024 948332322 829488819 722221362 956800146 722634507 586247588 372209433 474644477 450667848 250480857 194937772 111435151 700615250 309608043 358265107 929096654 901770023 929725921 386489038 816957387 618101352 326995855 415846110 237892365 375479610 754536495 933636179 346974116 39664353 489360444 373748274 36520599 143428987 864421634 292244166 346808773 179319417 76656579 424173846 975309657 21762200 660084462 21894042 884159817 563688230 512591309 614096668 397152057 437887940 535917095 766524786 754232481 478387278 235693194 812322587 509712670 800947946 912606095 233312946 804698902 595915843 508596882 103935289 678437027 31894738 495088449 652276708 56865464 473470361 813942106 272999494 892325880 99354643 1551608 21676804 180679620 960543152 819315720 667245384 910084965 934862862 602033627 921584437 52471665 966857070 775385217 195599066 285933603 624442924 794965661 818348709 397486987 23261697 759660692 132250176 474345480 865700645 224564485 998489922 927750636 721566932 360633473 126692447 567169474 939927377 673495087 706739104 761396316 221022701 523379258 767176482 182122471 344668138 677290957 473576301 111950170 526866633 364616611 396912957 350522292 533707281 732196438 882852544 745799228 770959699 816819033 108914384 319588863 653846727 450986193 711512963 441105305 718849145 852295623 334793717 340958232 950172050 419095911 541638690 897266965 430953385 938530401 364169029 589030511 272062469 463694591 310828105 966680626 43972631 545341122 46509502 823508358 721571359 348978765 839643132 324758221 141563756 388259540 951372898 150054951 243279733 164981120 64523303 261265622 26957196 467074956 670335528 888969763 242375978 20240146 227607345 480687010 670518157 270830528 407699585 232467348 42817750 33033413 431655039 389052827 866676545 613786384 295263547 59899347 515567874 586903760 526426587 977068871 948255502 76165796 90465270 174819964 905246063 846854994 350639400 53231550 525383059 772951375 68386804 187653728 919606290 626896992 805004614 304443839 504514461 919517309 842333360 36187688 387165663 439236110 757813829 534149178 592852415 545290321 166153369 702240806 482638583 911141545 244032692 495480986 230430723 674966514 501459235 63150410 480991206 529143580 703479332 969537474 471233824 805489464 830902322 321221269 970266856 239123590 649232578 556428456 487236388 114246597 256938067 806571907 576159520 233474367 366708154 755068951 825781819 689303690 314917063 474726196 684022038 671567250 339179668 233283431 223451972 925211530 320997 482316990 511177670 166689676 758946832 622834143 191096433 466085662 828308905 407276983 125012320 931853129 29214034 558516176 61821585 212288939 488035062 405317293 951219112 751620974 310458782 755955770 548858515 207997739 240373033 546105196 474621545 972835363 40004887 595500503 676103800 771594665 954023358 824756680 55902090 462818538 587652704 925657603 170555435 323480917 303536179 318912898 151863439 600721412 697879416 242789738 621131316 226666672 499575121 652976365 958112485 396136722 29957320 182977985 464824324 408294036 104915728 981461756 30601412 192603264 222605121 55664024 694538293 303879582 259906964 955562881 291652437 980112967 511572299 168623265 70283305 822199588 68662507 134197835 958628467 347931039 886644786 365242281 984631059 894039320 442285316 949698476 817079808 17065339 273003698 788133701 366702037 75671775 639388919 517112055 359399955 558623842 312543367 79438599 324518568 651864833 588671411 738401534 87091413 211145551 387893181 340326734 139127511 454246748 270559577 590808898 412981684 761286097 835785689 455026270 224292428 115034439 299727184 921215 511191438 562046737 3455914 111266110 8098870 100426390 460944881 836670864 474094539 263351036 472354901 197561616 79706084 402019723 356049383 95846635 569911484 152503613 175716434 731548076 755887014 118995943 43771959 310674128 905783000 44680012 982713378 813818754 519345075 761236810 442070761 3668359 285825688 738241927 995149760 574847733 858349215 634804679 481273947 422724459 904552976 354055528 4386402 390267317 818644274 267684141 894211827 600421667 675225276 730882603 435331617 680050081 562250089 752739342 96591940 299787656 209010631 561445798 190839070 177185627 403130026 788408575 479661302 648524841 16458037 82334223 417177974 681931986 412554979 736108862 99155614 763296875 841251449 331396393 175850351 786593870 56449073 589379343 153305750 499269547 637772220 71880909 134434823 884489127 332951853 986290898 881659122 614969469 711527615 786887806 703904102 813529949 437745147 260836537 369924361 498784876 509581416 473744894 712854735 898196908 278226887 692097298 966970920 657792816 20297011 958584859 395899423 977704838 877149005 397732945 385848714 181316370 210271678 287877488 56862813 35202740 650702568 339488244 86515822 749337003 536099435 569233015 193188065 452540881 116963980 912838839 996319683 902689127 646324020 734153294 85420149 714423635 628637154 604811599 795741111 700280612 512290741 11175865 355073767 754246185 42375124 445712756 281205497 695049181 907026244 889225742 824263323 934895623 562433806 285248376 799539610 288366163 65131885 518736294 174720806 295941527 252496470 362366725 356664644 218902003 399552998 800841749 973497781 682109775 303206559 898007380 324478495 3975016 120402029 274094197 465786328 762166834 521940101 569331279 491477698 569936037 463878358 427103195 48339640 597180971 211046437 115229893 726414712 175358040 11133444 191570293 374646337 580583625 267602536 525606881 946526352 595411667 412547646 768245726 192117069 986290325 975417118 99654308 724816583 377375468 619107963 386993149 289211933 328939119 201699015 736401957 827364107 37291680 143019785 889384230 268469796 569761301 928783822 646333081 840363516 131300672 616852275 17058336 41760865 716037305 764650618 278522409 867122466 842223890 226752952 107917359 537316509 657971209 934765692 154538757 680073049 178907398 837162570 147459195 616745058 939625892 874521883 71927635 563775111 912662379 947233172 114680546 621157391 962476335 439703655 970981416 86339679 821611511 80512736 35044430 739949089 243991086 261781238 413069805 28862206 438344280 442432896 619629209 255521892 484913517 459925766 949421345 896640061 391433913 55545463 353604439 146065127 211391049 783849582 584298840 393619488 42391484 670731313 159780976 821585394 666124771 935207031 543985489 972305962 264298235 496447933 735188691 979608871 149864808 430122353 349479911 133222045 775838661 420751053 537845848 603267627 868965635 210329370 982323002 638562212 313945688 635339251 411903897 418386250 236101740 321973658 956277879 598927261 51128913 437624192 35429945 741099392 465282726 88073028 549203203 27706233 969584359 853232255 472051769 40861881 266129320 451521748 87414167 291784344 941574219 255696385 907696853 373359800 255667653 617309937 897271226 699376901 898063823 950581095 755610123 736644877 33330930 515721029 770144793 498473410 914820649 797556078 549977253 675034009 979673463 413387062 460150978 600565503 500183307 950125692 455095906 986197801 93095014 892527494 997646786 885768080 618739739 133115752 155190036 735398912 402659780 309080809 428394170 578289327 213074327 875823675 624047711 811725382 229951370 543462934 617306782 561810807 503416613 120803057 320588904 611044453 690781676 523634599 50430550 202012190 117144093 757246548 858410741 13990211 326467404 343750818 105068837 932011117 755794180 472109705 616406009 894019590 996442966 233134759 89415945 202144401 22514422 854531138 943535125 323204655 96345680 360901120 534866812 258546660 562709930 58823872 520826715 142413228 443912658 383706992 301023841 391166185 625920520 629238150 650069363 624444339 545426924 742797022 906722803 420604197 71838747 206022158 653906676 558841509 814959943 578566408 135118939 730721697 389082976 964349406 587318799 822016187 193153937 504534862 121738314 513641388 677786378 24491429 851872413 535451088 277338469 760249755 298515780 70903998 137382316 649727165 501089830 340974521 312816078 328109838 342617700 354142558 505784167 858458692 325851664 29790202 210594110 930677974 977716326 63530606 337405880 317884226 777502968 599413119 993357121 972369230 558309118 74643762 538122007 464488837 574570144 129714431 566798238 894484437 772973906 598126162 990479210 608630833 415990731 448084686 557673920 398377383 393554684 740565018 781435172 594962561 769797945 181997923 353321662 156845018 137026019 673416632 171961695 225310396 472396561 45412246 400368214 353862123 752857935 579618780 838985749 840790776 251576921 884700022 507527915 506611762 85101224 953729635 122151130 276828442 494412804 528024925 603696981 527135560 480695578 469420576 559970050 321563754 596072562 74430704 927455009 271253846 293210672 363250830 516340841 339501449 204669075 561480335 501261454 693174161 895688830 909647818 588071612 988248903 138891911 140887967 455907729 56646316 618258295 259344459 533388138 414391124 288993002 785721854 339011870 191756050 780642274 578216063 709836471 453753127 728888246 701361348 503112941 492542914 121325704 115591204 760067453 7889081 411641046 740430245 205022410 170385748 601135597 850136611 630512442 565877266 825860569 491068398 739740296 577964655 75308263 51427395 553144164 560445900 683744420 79530526 988224238 773337837 651005668 367431816 276991347 611007037 114275687 979779968 908616085 919324257 828427788 771256880 737284460 768786268 370421117 911328164 574462422 507706584 494111883 433449498 655025465 251489730 571006417 809108770 630940495 243291362 676365669 191377641 242064451 170963428 819308283 423879040 888707483 449804022 962294889 711980690 85631331 880661292 272945304 925148186 301286993 312937583 751227666 356046362 638155803 997498929 480248512 490482390 927445591 736180330 146081663 313050803 579155231 321446573 896105371 838607568 659366097 114986520 568392874 854183799 775127163 295857521 668541918 774416236 194013606 780932386 969385409 375343802 198394103 589932783 79896745 988221538 787513934 21745291 34055754 782159841 317030146 477264942 706202182 635673823 331063974 717981213 373975203 943328552 208690845 365977529 473545261 513938344 217318105 652928580 174838412 350926768 537954485 104752347 248066005 391017874 27441203 870646733 688700108 437820173 696573175 991571663 793902213 669113444 357470223 658174085 513743442 303883983 266483362 916781316 304861483 489925898 534014135 647809632 530775375 477290226 945645120 427230935 190725926 967393062 548861053 368525140 210122828 672368567 509364368 328393504 588195025 260072811 880754608 498949965 875922103 226734918 819389061 789303665 934998270 871129555 555511578 764068862 971682921 47176820 419049555 373556276 616943812 686187419 104299287 606518324 615525782 621947379 11366979 904422050 421862229 211505627 661354576 348080183 310837397 731518757 648772840 431958514 519480507 374273389 378419810 214953946 471448678 447664563 311108912 143603888 137056753 521124275 244847223 968276712 167241583 936251563 203499761 416638882 78064431 519977683 596803210 699192485 838662956 688923121 187841786 791667433 461595564 669645990 107676593 686253252 629865400 202347512 751384959 193676354 185681304 248141742 365634098 838707333 545761062 616878290 456286898 962526933 112010779 122832124 192819936 852475470 83190556 943825487 329605434 864660010 286456866 852906693 706452063 670017772 597291905 709325985 45462468 421667156 843381264 273062367 24173553 696778773 578638337 464109953 809837842 638565425 95984361 914510264 562266248 243484663 864840806 536623147 945368917 760575630 678170838 409139236 81758575 331890849 391645439 466750988 514926664 313670224 678659499 443690080 93680789 791502845 591081296 378302824 979139837 328574318 647301199 528092845 370833940 618692621 158137467 762858715 416723037 744113717 323033371 309854442 886204740 521901351 585319628 683519522 428611300 287935733 285998689 326811404 834453804 633821191 64339222 491587859 540201367 214825143 206373835 549574486 57005521 862469260 107858167 907910712 835776764 957325391 21944609 680873174 278552371 43316840 165725759 7796664 316431843 984528059 26156851 261107363 419386238 56071187 409817830 303446578 608953100 54692262 235967802 619005374 830281902 462163342 965457026 114044505 612002181 926406329 986853321 669313932 215669399 674201522 616280109 424055565 268812086 877408629 69119616 133408694 753487044 207873604 443791452 616868625 365245451 528856143 690567434 145699255 323920802 74522225 370653476 439284629 945776833 260287660 623452711 796385126 181101084 407688033 150368935 70484094 629033427 323538483 301653749 786445105 204575069 176541564 354976646 563302189 615037958 725178563 770018896 989030158 761583 333358976 666609815 265362571 890444652 957521046 121677103 785637390 460767021 39894282 889139651 975142860 574391780 112754724 271328927 742291979 256745298 562903894 45446990 283142336 17172843 42914946 324874014 630770640 915280006 281798084 68895653 562234244 186984089 895400750 246793348 858323818 191811783 592769198 533656730 646452348 671749526 262857946 400501943 438851988 29858836 530445317 778602314 347332443 426747570 941778923 294120357 83653588 787896724 833832163 340207690 65283038 214801412 873657346 401870539 888359299 245404538 142031141 26626495 34452681 334830739 68767751 90902533 160193046 66647362 523036984 300723551 356494403 775031833 872096131 60548100 32608280 480727242 666519190 114916042 822548572 894029354 30378214 167754960 123648969 308789627 629341637 489389760 931811492 463342130 334269787 235091690 427042369 438592979 851644034 58199424 438632355 433787961 395853198 684911584 573596051 22234687 690805978 518637617 515692578 17212218 998748857 656064746 817533049 134847639 484265238 836630845 693313715 527046762 89988175 340225971 842071051 796349690 791194838 39950896 669700003 942373954 567977770 176806649 674367378 650091932 118838571 373701328 444739473 849958024 627193615 837256800 775923022 662236488 488431802 560340696 378933693 698267245 126089485 760765458 656205279 84166184 258961116 875614013 238202082 219200297 825026259 535039820 411882028 360373442 696308184 505536381 928806118 337878676 254444918 755668929 370483026 192380890 984039243 896062938 578776306 904668838 897096628 238646285 772831560 475478683 196109871 939839157 840218060 442081464 937407635 524608262 501354113 150749422 612829369 382300058 939576648 728164614 137058879 619265496 426107621 933913431 91599654 239767759 271449210 909126182 12111338 855450045 41063506 540191239 719196628 690894389 682392297 608220278 735039133 831466587 806135333 563648947 330246567 489377047 468930267 942748146 329074685 218711254 458176175 955532125 718089550 430371988 548895134 516579336 802898833 788816870 123689606 623183335 631683373 52528703 528637787 468568774 881902301 674755811 575580433 357235870 904142666 779478153 571859348 721632167 557062255 830762215 108248434 317339744 119343897 495759394 192772301 379760866 920048820 712291395 111451086 553493567 944604545 399867279 35626007 562040754 393161260 963314670 370626948 344181304 647481691 414254619 409160776 821717119 507637884 207928042 620371439 660435958 280993354 158961354 202814583 953489007 104298452 461603550 894019419 294463152 898197174 461128555 349077174 347812548 22118148 40557597 950271458 692926616 686273440 939691607 314440422 551044689 661037302 593642332 935252262 191380873 68381846 619363955 872431666 329677157 45529609 58407770 353716541 26203178 726866456 625595421 540683107 593153025 675007509 697972099 24778881 566101031 921196599 685057264 190821089 417048063 681068129 138539294 65314807 843783731 684788857 828831777 672943030 47799201 925562736 599380405 613416435 186343076 614098582 413459261 646926714 796283383 220634070 267527843 523368669 428101745 900015532 134590786 927536293 577023857 601637420 989420111 157324544 400987355 665548679 550178147 304012686 392356386 479579351 385491633 102239492 372691862 738840271 57075707 806087129 525990219 930089091 495378002 947285925 636277408 667091185 421989709 676942652 32281638 505055994 816459898 885241811 980648502 15257648 529299861 258836016 887536594 474764934 862635124 571452784 707044077 136739396 604161964 432379893 287472994 887882556 736348726 930969097 438924137 985364631 454358578 196920679 584923035 6644385 939447341 243907635 137723959 158576104 629974467 956986983 196482501 631144833 261226531 535601245 670979312 955715383 298105947 862198843 577994566 335269168 962029632 717370281 511318033 439835210 534328530 703666615 754781216 830107543 647486987 402842241 488270814 912147014 561645559 505051477 838336685 746293792 959559757 742319961 986788528 31590417 286232745 963731117 887327124 4982068 830792174 175589957 37542422 714819430 181825091 607250610 644823107 185072109 687900326 723994488 162201231 239694589 945448623 743583876 377462583 343471761 155613943 946993952 928687810 395019241 518413794 127515807 56612998 812791394 456030889 139056430 600112520 130690622 467258843 719596718 899126135 108256502 436865242 226717097 412271182 599516784 73150100 746476455 247668324 445200316 961205992 392915708 657067324 203988912 679489101 928027191 163755207 253241130 974816011 117665689 776732975 110808040 105612241 717737067 196875572 649035232 983007490 381610764 517989309 585621095 507103329 978827769 808448728 524365561 483902162 679821034 27668525 910146610 981323459 879780395 847945105 824830088 70701573 59897440 234315888 128358447 129656828 533523258 991497806 288245278 535529676 644930192 232404496 619709511 713569823 143135207 745485517 759421280 340075287 80887905 386011551 672413739 469561814 254608627 404015738 305064386 592418082 240563092 241350209 639647484 336775600 534822532 998869075 49598078 64155460 327774839 9015062 97676633 6225156 619520534 699235587 278658296 131096693 792213502 518717978 543293314 985183847 648027245 165487555 717612661 484698927 513269006 734313515 863502400 302585272 333495236 150645667 916993081 474251775 530439411 719003131 632597085 273367224 508829894 580466672 555448692 904651839 272971473 510579041 480465303 162935175 432685342 860809275 315306978 549250765 792941214 10466573 731127003 950754354 96970018 817525351 37897706 308048288 13964060 831185060 551969299 250811138 279326509 436497647 777389762 936053569 306107098 3648301 717067579 384823867 915161215 702095984 621392967 851728961 314075178 702538697 567894086 364897924 899826951 455405091 577971614 943889942 758911613 347248054 996037917 461296183 130983785 995760352 933582296 240198765 126115762 193616356 784497427 140667268 228060843 789813411 152748214 521576624 239064870 671819833 161865887 787751068 678821564 994557785 517994605 731962222 829770864 554677782 459198047 747608397 924412765 708282881 147400401 886087446 289537307 391522199 704100346 53028490 820253262 752208331 658629627 450928647 150394153 52535306 711152392 966851268 807601251 189805095 211721755 949334343 104901677 535536530 90345545 208562191 260920647 923264675 243495520 118688762 632338515 11055725 474634673 93361463 345288459 683593389 969610428 261515947 713950480 42788837 532174832 521971562 181718898 155797673 282109533 207352714 154057234 429188404 131271413 583277874 709143396 143967847 5092239 912219586 943428148 23468316 19099860 538759700 147952531 488229579 439138357 847627003 240172764 445247620 389560703 695589307 960132796 714438462 973000188 168110665 545108694 805028776 794874281 172835531 717056174 556226081 641312292 124950422 832799710 434025857 103860347 264287488 9601588 552826931 497729800 490428129 716056173 962793858 73160562 974665522 200576489 894724138 427177390 643188364 949513989 233443417 85210276 828544153 413108410 56539096 174842211 422806266 997938187 816235134 603575757 84912711 750040532 278235215 166090141 429754521 920783284 2574671 176592530 483803556 234372135 65699697 366811993 522826779 563452089 419464404 693286675 514330177 10990074 239908723 386215781 420942337 582369290 297028614 855135531 694842106 491653420 92932882 653521007 941653253 954936631 496651504 99175443 56678285 98782692 654733862 269842210 3773443 102891515 81449310 801506045 923421105 43636136 633931618 243231456 341721066 48499912 527405759 137039814 513791615 346917901 153277904 212695549 301161989 435373365 623194072 455002215 443104445 439347770 158189464 6722275 563474369 319610013 895925602 622769967 569977171 7047798 622309690 838912820 176169697 858106632 176915382 646606520 616346844 734229226 820928821 334755886 877556337 7763761 881797202 860706854 938601055 417056912 693203884 407403954 943138185 554093010 883293691 36125716 46906406 496671837 680086296 265896976 332320162 224672776 629866945 501193258 363693367 583243523 219090638 224650692 124632468 325496005 93468183 148855881 480255462 295542250 170884754 50805589 846288430 884507645 998733533 823950119 391973645 523932046 133132550 971409835 212290711 637535915 775726841 848501430 21297759 965271021 182675259 751594710 635491458 986959215 436723396 908938480 102595110 794903282 374802465 752553242 981711534 570161900 899009896 74290097 616973518 619495595 975630893 355770101 418242122 147245867 992398317 977541735 241022101 933544903 928605370 179073388 457151701 663939968 492680501 275381734 137145707 770073067 217164943 760637534 436850291 301711397 33734481 73162161 999525989 544325529 151315248 113038282 578324330 493413369 66485557 910517944 293342397 809431182 824231740 478274646 482420309 350086463 158824869 445730661 764781242 113896585 248229928 406228559 277562640 931775667 671461594 495784157 975111896 391191250 962301190 888384952 20059731 323424838 589688307 861036984 260150468 590672744 311843858 553189348 447183224 198553115 195774306 689597637 192084676 114006934 436767366 262639754 767610167 326243729 677005928 215039343 139084357 639126116 837491895 980266853 135117823 407116723 802269190 719001468 177310335 408871690 980344643 770079065 980677995 838158785 398886851 491088286 774642343 292294637 615375946 965275596 326967759 974431728 340882017 950722546 837154902 660853377 233575526 616171726 552278351 249829943 405780341 899434824 836393653 781786578 452559135 986049244 567365582 733559714 994087062 173504062 544351493 14015858 711387147 600317071 599779038 393623276 238498976 780031078 692920682 497535054 142077163 921390088 246408531 443783988 542216179 82646100 78247360 12158188 131125396 267925189 993483648 883714874 773119576 461721991 451229683 114373769 165457006 842678096 565961870 158833337 468771988 877323645 19110309 878783428 157621745 542629335 608935314 917014054 125542681 422917543 423180489 494739192 264503032 894400357 278322601 169341563 890349733 297351825 9646672 901774696 392826703 182259711 376421922 446938302 286455029 83508421 135976389 833488524 168420259 974755637 295522355 598867336 775702901 130494114 234797484 829426010 183697024 456994932 931454218 929307621 201494026 540847037 41678867 476997792 588972961 30107056 995266770 706885697 570866549 232825950 430631138 228900939 622927396 784717116 341319216 477390260 392204786 423357880 534825097 890779381 30722589 260527298 2890978 743826267 897576728 842481010 12893861 483588407 164746132 66435126 635365264 93354170 5054325 17444210 314602041 800302490 97725744 791794090 265132222 971230430 690994965 441476093 388992795 820951663 674470767 816517218 764087027 900310278 437948344 912135965 481247506 942870302 471987608 348731436 962932027 219950965 206223304 856488786 111219177 66408219 694543436 525273804 648141517 911941660 769732384 866816485 773098451 69855029 103375186 143540525 875174331 368313209 300662572 609966040 416574495 338667266 2771969 40236298 801034003 402635583 75976197 814272170 560983297 920386201 275598979 768048419 240820183 456066216 537073933 600615679 220322425 663489074 256068405 440906644 573244822 247170293 856415466 419172951 603972545 27095728 301892771 917017645 713142288 85279095 735306951 56065231 446399211 20926663 612793566 354419520 169878489 497050455 829153898 732467855 220759652 242065554 365779950 242745572 67008104 32512179 202797707 422934297 162268823 986332755 344081627 869749861 46751100 969350297 169479059 173911395 261502940 642592273 528400610 277014373 127855415 76940510 648080232 845448880 803582816 996399443 290623540 501406925 744922750 442246793 964624136 26788748 386178727 363071239 870746787 161059789 922753753 599220668 347523017 731132238 652102048 667960622 6524746 708196559 491773739 205254456 723720741 518969303 557762970 988077121 844482662 477238980 938658895 37022396 335556132 647557252 855874538 908526433 209956346 379443685 301956012 354074204 489426762 661885893 921942903 8115561 621907369 166323865 223835738 195754457 415731638 970289523 710060140 285067821 846959608 969610928 2942456 128063785 972456447 313190996 908618694 314894252 494991848 474559681 437429080 799013643 559701678 755656828 484725232 80182317 913467069 634068628 704708742 111462346 838629744 724464589 18356133 368978147 568916168 581832756 470928464 899162160 714473252 417025994 702721440 158466312 978232897 180252127 333516384 145368554 148433810 999831341 913804948 222557798 934735213 448663749 653969670 226990185 163317412 132642595 54764940 891812311 970700970 482791009 104365605 668955825 61909816 242032899 752874549 1410567 256768866 16427663 660574365 705164630 239759046 328626273 460470316 32298937 788273280 823197126 661594459 511442805 113018266 224698421 258235844 811553188 872556342 756334149 328855100 990492941 62289663 316733324 226381613 234612961 210953357 55883136 905583281 163143314 813585304 794730657 119233723 206033193 916579283 182736897 182089720 962491506 843623757 909986048 471681696 305649659 273218490 99497396 58597970 390729908 312435810 385665228 101121867 895103020 642797055 895075244 115631349 79089497 391859588 46165167 127033140 113748738 839914201 494145887 899070649 172810834 490977302 833784881 364083243 766882302 1238527 798823104 938258181 519692654 437492845 675030818 407126884 367572688 164551623 768101512 227140547 559809504 92706326 315945211 676745838 126706978 537274284 424555625 300130086 410491318 801441445 457830611 350585249 41548771 995079384 436219218 396321466 541377120 732706244 455701505 604122674 679709256 202042056 672256450 695393424 763555249 866751482 459228460 67772811 825937481 787760602 644976982 988935487 303654221 481645522 712529749 488843049 584250042 506925338 889485153 336220064 666528279 578391323 72301994 350387236 993687067 767282454 875100261 61180048 722483725 690797341 828709929 829503718 502080634 953868173 17323059 157507458 117607137 907973023 249545868 400307953 903222927 475323558 726955770 614638198 456768203 709449763 413204047 123368264 533168550 154565445 639884232 334297193 91670999 554374043 156960142 177898713 626472296 964433078 644383975 540988227 375995378 985247092 764202547 266421803 543586702 660164778 644877367 594903726 599596412 639318308 182933227 845527903 54309714 952746956 689976308 887535582 272728858 619345827 123481857 505279514 768038385 849814855 286827413 341480274 540026221 467108170 176140796 187263758 808164026 477901227 148152666 891816634 718229798 373594671 994382271 443283211 489308557 463761309 454914926 834638158 909757006 380719254 926079074 8131707 374160276 84611214 238533143 303930278 420176363 140811475 252840603 298593733 991104944 418664703 941119813 736709859 631431181 688314193 540511365 289175938 488201981 737383189 813590967 885457897 984534673 997458106 947742499 361523953 377086054 282310832 939472613 6751499 145102596 679815276 855318411 845777412 28001552 903402781 30784572 435510897 761153524 291265896 915118483 281513658 160846123 866059231 34315244 762816175 105116653 79293608 837717670 967395589 538812775 278658141 203774177 953713983 848006459 975442964 819718614 259126750 270225625 364467140 247637285 249081319 243156922 233463166 34347122 512950978 946133873 663276382 636911084 541452730 692993801 597033296 631677419 730106580 930793783 92587953 217165419 333400612 290856619 716897165 52360155 43883568 266152375 422336212 506127714 548541998 906414753 451031337 696145248 39993515 831777571 960477371 210535312 479830213 880756384 111173414 851485572 459142469 761263728 40511459 142896648 620753891 671913659 264352976 827930583 363135813 608341240 112290194 62265841 884599517 232796223 482795119 593220002 475321939 724878522 103289648 375252837 55380167 233143456 290331770 892596928 23810769 825351238 94817575 369673041 755347267 517884235 782881770 671047651 886477617 243639701 881695426 659630855 786939043 456215334 630794684 475699534 147237009 810276697 474388 789825718 992846702 292340331 591093263 75349163 851178648 110028432 467142427 641334776 559275990 930073783 174702615 793990132 159801903 729519877 698636115 764152227 476327821 939182837 550060751 261332748 543310796 27123331 582887579 44220533 531332095 630538904 29114224 52046687 647343066 446691505 632710395 906320736 653138416 395653853 284424133 206384828 507877006 63800619 910890188 228931114 639477946 488378750 183468679 315358558 596557861 622364642 43046638 88111090 872729787 305075486 135560937 894924794 396000720 94220982 937799933 64777397 116825214 360379558 958912232 56821267 148985001 780415930 879712267 672102006 656863705 369691432 624244657 378752877 368122830 815080940 670710332 596269604 328219432 279401322 135137411 292496606 590566742 394646306 540628464 82038429 493233072 918308767 527413455 263128442 477887223 936051104 576921163 193648174 846757271 139729125 648027528 107846729 518794653 452596310 199549000 34227514 808371808 279718218 562758915 853354197 192746271 889869007 18585591 784219903 119050855 719460990 618947784 121010345 676826163 63083756 994087907 812582669 213965327 964974144 389650767 153475163 912748711 710399749 325167330 991138705 864823426 458633607 424982041 243089347 568033676 178033009 528441008 437366003 502304144 700474424 909316945 402867024 159140791 910396485 529102542 524737427 728438542 141895070 92184114 84703245 212266088 144672022 319731868 150642324 98164229 712384342 130082843 304288182 362648852 850947132 910632741 995919865 212273981 635324307 236461639 633890326 318268265 522984404 135678419 962219180 177819007 240686881 587735270 301172795 23388020 484545758 158828290 125951964 356686453 981563517 549064332 725340190 996517281 486144190 746064652 997257542 433281677 478310556 479263566 120041672 61962012 85090581 187453457 63124064 228289239 596639903 466310884 67790723 357053486 125792830 176537944 956425999 110025239 984252121 950862796 477638876 725674255 615702150 908533930 615747739 333987702 815725431 82969156 27891389 663192438 447999138 323114854 231906831 454194385 476505490 230498212 683031748 635241740 784574219 288250391 195095670 61313994 978338886 990118957 630427866 493609562 284902543 3190171 21509604 252462385 975238288 83998606 163936528 827349167 612773441 613996476 713013398 930112218 122768466 757410595 148052386 250500763 12240773 86318281 805954267 713762857 839144383 959067148 307827581 971343556 647014416 970460186 81339575 480350869 811413687 334558625 374618179 660340739 251347454 107423918 817906589 807456896 795626839 812887773 394613226 932880695 515006405 364633054 218814337 895302010 993798830 964065359 768357577 129789701 10916520 507730571 158249262 794601584 692669476 279360813 108071529 234831765 786860753 793837700 799206015 395132101 31926609 555361230 805145031 782210858 854063907 504422197 465165261 397314064 761671258 694024470 559006382 598203742 736716099 688168362 226050164 486920277 416416614 443816133 54991797 536384873 749143296 949293108 697787192 35126015 818102593 858049441 38896720 671481567 809197627 701200936 486919133 155671738 628877024 51344631 64860282 116329507 418566552 324774455 846574524 583586611 525353631 561848142 8692643 163843792 47350425 821308475 323617065 292899980 79911243 643506232 263188890 600759882 754359882 179534584 764449883 445901087 66021556 689178476 957421996 608961692 869365197 80279725 673938779 931495983 998494383 480322890 927347059 141610579 130678820 724357816 81539366 514559361 363390540 273805164 598800903 84743577 14684352 270736619 566657856 505123846 995606476 905274000 704490087 277686849 470455980 895090596 719563255 816549440 941934836 222068320 644284071 426543284 6530386 80339695 63063176 572353995 283819146 470346853 234427771 373784318 314256948 364562499 860206004 401885496 734679068 318691018 378664680 977271373 391075778 758455861 941927685 440030897 605579341 797898710 285352910 359261903 216165629 853126452 464446948 290124451 151856724 522996559 582458450 205809383 961888946 434066751 982165530 57518749 849428194 654126565 686092942 278059071 174153777 347377900 604152602 452902154 84820443 696082902 66392179 270705709 322394234 280454136 483483824 400027498 492118252 161425966 113858539 355907391 443055295 614493083 770432910 643615396 573646916 437815711 648081120 684799300 563471117 657107973 663811312 291140651 38839988 838164501 2841205 42065717 221095902 148738934 79661642 621936075 788911624 879328501 965974080 607423109 444570953 973561946 940275765 575318708 687566547 283946744 19212637 551366743 155283877 702783426 822720116 90934924 936884420 700914427 734219281 567271431 415781298 314382368 753329055 971921786 137651849 439938451 214911312 766180192 875332943 948817058 587956408 214370174 189500428 836821551 821347417 589633093 688693707 679434509 334215808 854905463 380688793 894069457 289302773 287311751 298694688 729202213 542584613 133184354 414271803 32882723 412950565 94064839 470880489 644036645 480442695 240631017 741900827 814740716 630602801 402999253 197952994 498385103 367894486 112533285 861955692 984649569 484028233 674582640 822697274 158036028 979990527 343338100 946167224 870992153 880429176 561603095 309536552 453252109 22629709 100555798 861580706 520164073 510532115 988772450 507925783 784949616 671494493 587724725 869640245 8521982 214457804 993190954 719885363 243455670 541118208 993437432 587591978 757288668 952616126 788453385 974271059 728618454 997960449 816261024 73320679 515761881 849250880 937649573 270578607 295733500 863580371 671061243 133766959 425199202 724231505 250836648 614587566 997372900 362021211 693280820 438488774 424696383 153129831 1196453 900803846 396146559 163547637 60996954 438232175 386716793 256653965 924653413 507765863 83770909 241521643 402027493 903677215 177194293 268731482 564580997 483047210 446225027 639370335 629401901 647162587 403924811 374271397 224701841 254709281 239203637 491654750 496476893 440324775 174676993 727559709 679564810 838776459 209430386 212456447 58750372 382136351 97451169 9832629 731547453 509296531 173034368 509843498 850175827 321407848 322726407 224755788 570662828 783915645 938256181 616219043 185914922 183657873 329788368 967424882 566437617 597595438 361021772 698664394 455418078 82873393 435232612 249502717 747278561 624422432 113222393 532921086 635162225 160780257 438834003 780374439 537514449 832734023 226350550 177212265 566466610 978327995 625102132 584599760 175319745 664461326 190588648 706122747 997219269 79415015 821535108 474185853 569423867 938014699 274596835 240608076 692729790 876672242 969956242 610796965 300469497 35775738 202176500 55315776 431806987 395986966 445163632 724018474 18142119 6740198 950089829 706745414 264800862 115678861 578854834 346747905 785302631 372283918 194527880 319330948 300164928 466298000 578495462 956704107 989951417 112203651 125616702 935183873 17303728 990638955 510153312 922814940 168811425 29098004 292642964 574132741 280968134 729509017 264484620 440518484 270570854 335311488 490054488 408692032 974641037 981708381 142112168 904463749 571822126 200162230 544454137 271198585 725772 54996851 538272175 938442893 558891799 38619983 640911778 633964968 5844770 487032247 469024896 51338423 181481737 925279103 423132640 232174984 507871377 814888799 404455621 244214187 26359227 29338419 556606766 409835393 157880210 903899960 872605770 810260842 826435747 833394555 416802355 972286865 739488265 533946427 86826644 245847347 134121984 909025698 704411593 231121683 174091211 605013258 174260244 502725179 758149614 271451779 485363539 924019475 868155346 371654483 110003369 970585251 673888961 461333289 593204450 767704630 611145531 616194034 906574185 110656916 401947020 834052015 91448014 493579866 231734668 646718215 975261504 319862766 533157130 182069281 330082746 743239705 335036112 407049203 972670862 129100005 907137526 923871598 294387540 707380666 370088053 663396878 595441458 132152004 528869430 729101754 227449924 520107222 602415334 475189849 955176511 230980820 20151501 691789805 957077129 480335577 698706703 490489898 816271490 812587890 961796942 273911517 373265410 227698450 751541689 463402692 966868959 571757700 133212833 748253599 892947534 703590936 416456218 718986920 204600011 177973428 504412340 762900175 577870227 624615536 224294861 399685374 85887947 246348008 570688741 467020588 134868777 141783240 692890499 454377245 79142553 451337170 79318072 961717723 30847305 75271156 224662278 512055354 764964750 28275967 705924779 767145921 548572673 84589043 409929369 952170585 106193817 419611371 161547026 270102121 559874444 491712682 968546311 637624127 273309468 706603606 21265217 38400855 552948171 718883941 228305638 269599466 734637502 821771144 258464870 14189877 600559073 323099061 326131592 606811824 468869767 514052059 159919130 571199100 709284035 239772 334726702 686845291 136419764 78102076 285560762 757481294 156904933 153596624 638541984 166700108 256057038 100643474 339391833 536980153 300267942 273731426 623981696 807188651 717953808 340116784 938760866 879415854 981189028 334904083 691060844 418897006 386202126 665141908 522822844 54682750 618497534 173917808 762510979 925322352 768109299 765999613 166221229 620348163 464745998 497327563 661060771 437005448 207983913 252561103 480570816 502168094 960030907 788832517 3815392 160624427 810544622 325121133 621628770 804749859 103037602 847952066 948058013 720896066 189213183 353708621 859420772 77696227 468909103 939602820 290997173 79192863 989675140 770522475 737433411 138118306 83705270 860681045 794827125 780539126 931882932 410649348 916048212 53596103 763266054 265222595 14645679 180752813 600211830 688938654 472240697 202851234 915127677 731178413 962439921 468146818 597352604 566757358 351052532 68521629 3260914 780891656 738150598 163777597 709635813 77968404 379120995 856483810 818812916 169848916 755869351 559121402 606731922 25003189 356254968 417522131 73046503 912503245 980301165 555487942 785087755 100484924 271379859 90881516 457547707 556287791 74246451 828595995 932825303 450763321 771443361 344357130 618095091 384232384 936684172 273235572 4288727 715735001 425740854 103585620 796195931 490587203 814832883 770299551 156493817 564952437 774869822 463126072 142156746 856633722 804581372 793186034 560175023 408417407 867016788 555476115 278517116 730303265 701296505 286392880 841209656 794023336 938500548 301440241 880544506 211382669 214402083 957697185 697970087 854849045 753662377 803917020 286661686 769201483 214435788 940273145 209569775 947732793 52831160 2132468 261937718 846287780 172152860 636664880 971791633 816088442 643189900 306927456 146603616 101456637 33105054 136982128 447429613 459909071 411400089 534951849 981973748 828152556 36027522 904635507 272644447 137575003 603658519 80382976 14254485 949623112 450560696 74207007 439594371 332447078 827848654 854357182 520322993 836947561 497597251 717194018 201068470 712335100 430692675 782137271 845278821 532595465 752721723 421786827 535690644 709875132 700464866 735779314 632653874 926940130 866353709 715896899 437803519 332817682 824602868 880858689 567899887 320750125 632757058 745470180 87358389 426331165 66781801 156938182 160990371 562892414 723946376 394033091 158945128 587671686 341833499 770475598 834629981 904371858 4044520 375075612 707963278 288369774 493917988 516447031 930597415 651079153 950915662 948170101 258355274 654727119 410914121 640647303 871434751 274520740 662523124 800608848 405938996 823496795 353948714 821773702 580121338 412947357 888854559 708377642 614306126 188917254 373340541 727649084 794478197 400938106 936379222 830263556 877074993 915152281 948787543 512101168 500965023 513394213 62180851 953758489 560632726 484546609 312109933 749690959 216409228 485116945 853338941 780133741 716650735 890967690 598455119 609355602 404152966 763383259 584293408 29653578 586001777 679003984 80753861 437231424 823035806 641865943 219390962 982783125 344136938 643041411 542070811 235841467 679013439 416843385 698741593 74156701 857329358 593611985 667769171 796671876 186430067 471698178 918383422 658834545 84317755 978519596 825508239 386127250 532743891 500866959 44316981 847425460 941323948 971556688 99019341 726974931 554595766 806233234 766941545 179201665 514923797 397662360 277813502 115690101 481059120 858784279 803173730 110961809 821785789 821830394 595190383 666387197 599802616 82260547 883062917 523921916 5301964 523963373 152140357 859376744 407323498 34732579 701103838 396706773 621532406 112084015 993855941 870871440 28760630 137625898 796505779 889623766 831003967 271891699 292471989 827958597 456085352 881362124 324112831 646477778 176063919 689705084 304298981 559718080 235067176 280210256 424339546 675923204 635636040 272212595 59454675 945411044 107109457 911711139 10800563 549976786 698116451 10979538 948448230 717236570 244224051 552908529 378033302 450173350 981106765 435883717 405954388 438669553 225199489 329574506 131395061 604210932 768334611 214462142 477233967 499802624 637026945 828688047 6211558 297203341 747319374 368154568 205244455 983977586 274897572 217112110 285815664 608588571 229730934 428596511 132073529 996054065 441305420 327161817 203140848 753061083 630996201 101117968 77600769 241256068 811137299 754683380 476272806 284916444 139558963 329912456 512910005 933914576 519759548 353321961 634929981 458021397 309818451 145699764 708503412 81526457 546406262 102652418 558808645 535823032 285117592 568075053 376813537 433300517 638039115 183645568 331090329 858995581 860235676 343036432 145771827 52017088 120876175 943320939 205483093 286315234 898534093 91653967 268533252 920680957 41012497 840951470 814678003 527715311 903911320 906757980 30636398 718195046 771816816 832006102 142649233 302575785 586269235 288163665 500410058 404619236 146290321 402947745 134342367 892735588 672631081 945131902 5902334 199469802 125188745 19527946 896264563 982413157 105107388 208811288 633788014 532341790 854133761 511002959 189969118 345308218 885321283 926628556 205741095 270905057 795832034 771319796 633295018 728223820 809566001 305830209 621615973 933234044 220426746 565414221 988259310 359762237 72819663 326706370 554808549 514658163 590925473 579299602 596482357 187704946 158092075 4696579 677003133 426255168 317253899 914454967 919443419 991179832 751155202 266112149 59122262 76450170 932524311 594073633 290374472 576798025 328438099 358248837 901663222 61066185 470706621 313971517 860001624 32799293 498553205 138812041 540620839 400822280 901568066 369692687 324202293 793390663 411606758 513236288 557805233 428122258 977687614 206590012 616650089 717014050 974043483 120696321 95692307 446952064 876081877 914964374 386574361 43752089 3024908 35816227 461494301 946916703 259281696 321870419 214235875 692163365 681266422 888309004 822152938 400266877 179895599 176114234 226711820 162269393 26633399 628210470 486663555 821386793 923221856 748841357 560997240 33727119 757354421 804539690 563588961 972196635 991827543 696185551 936006340 170908535 509150014 321313837 136654902 722115123 773731255 288791727 662768624 706181001 353241031 919653715 905940898 168277267 819331679 260230753 530944061 295796114 16219350 917711174 767492412 437882779 859058638 639591365 576141700 923298505 945927324 941335125 733643244 699990652 827705741 374267132 99622295 558772589 969390029 608978112 470639390 907232428 781345588 665877881 425678329 215002912 346294163 517970967 471588843 440683210 89287333 228496052 169575865 940612764 371721990 55166733 86434701 192102447 90819970 136403688 925935460 276513533 158475672 360227307 294522207 758425669 846442181 669189650 153524208 495610695 90244249 972445460 728816467 486847421 965981515 766629086 820125577 127832005 564161955 56077255 175758487 631382969 847406667 55072648 712306703 725277108 904208237 394414550 47508406 842549190 762750374 722747963 437363229 126987634 602253534 406755115 936204080 273380311 932534305 218205018 908563205 886846827 281301068 662006979 261581400 423194909 495755318 737910388 757337292 110994215 540406980 128111395 142540551 83702040 406531176 901252359 518172287 734974801 859600760 985949067 357538779 501561551 239276755 122200840 517077517 399637757 113554521 617812219 148962882 781018654 273767942 731584706 973864412 705528847 527220647 927778788 779546070 710006349 22178241 576140407 446988946 982348901 854401000 947194414 215823917 774561569 551208223 327040618 324738542 705262055 567110682 80917796 137184488 764312905 949098142 312999250 698139639 371873145 729615620 357597014 206913636 160593354 973457155 972927948 75511247 923767719 707404835 3338571 79577257 791484065 958920532 70122665 246968935 45556832 825243172 804592735 561233232 31689423 829018560 978509754 198502968 233078615 827105066 352804149 552674731 516524153 245261271 920753423 682657291 787160838 467559610 170140629 489990030 833360006 317449020 15805222 661702140 947637185 352400852 747686035 323835825 611705596 310545486 576711334 971086558 600633342 381565207 264440726 352666404 636836596 399169277 572730837 547418812 597016586 160729842 446357674 720479287 376250245 736875679 835319703 777420294 418045495 523528123 624410228 574540079 647651274 774693545 550690242 955514817 746409668 424005594 702600660 78853913 418992 297943058 605216849 4217136 738508620 500744123 963128426 969891949 654184839 586084215 744883750 594190956 664259238 904800639 132895103 419157741 706059536 488691065 660949409 649405022 222161038 146086526 278716423 628844146 832104830 173382422 558836664 895761483 397238510 75883821 748182644 677946361 747535975 56475297 930725876 827470589 12789477 54125694 820719226 406250526 737843286 766004791 970620726 441773570 503714667 6331118 475772755 715776447 224974356 397135513 423879078 139119537 42735179 468520582 436842672 398936112 602846468 397452886 837035529 550050147 630060330 451593872 140554598 377970672 568622997 601318941 970892824 321323950 102794611 977513849 318174525 563156509 67526126 454426629 884591651 583130221 421397790 495903800 111787194 138119870 594669219 22762409 845937325 993710403 10843685 62509077 979161944 703899210 471031751 879928522 249088621 884983413 590661214 174138617 263254183 741889730 769250872 369825054 633271405 722310983 172750709 466022845 183023336 431909170 997427864 479192028 426863516 817435026 482697566 857118082 619293083 834294398 857538515 499085440 576718571 930069069 479731934 164197976 613020713 593564856 553406969 996472598 962963500 728086546 290715394 586612063 795146040 496823903 260099827 601924893 266350395 574512925 966804351 846443214 474589511 411354163 142194172 772125203 103142742 371355555 405568534 757798976 317699227 334639580 514362893 821808501 621669218 768035610 816090324 992332885 1032889 788188729 778815946 238647268 953891808 111669420 714669968 687005497 544523849 997444993 774055926 104338541 890512855 670099097 457069333 787118213 384483353 268572045 395330370 878990583 659869991 143549652 18922966 439174071 857864014 43593500 315495358 382632447 97973342 273490724 494630387 88921442 97066670 584548575 366833410 388819932 516297316 431224731 110472079 954843278 678584998 280838853 826842839 972123614 22182533 444098850 164466173 424515372 713371330 237628206 681315825 703299891 265444947 286550057 121897888 468324780 330457445 633654709 7920705 104310118 848809479 609116350 908247066 918697369 408395723 309342114 966738901 220050095 761735671 877712513 319886031 562328221 182320915 746995439 333001273 421379901 384650912 938292786 685206056 551934910 837824150 942272339 26519785 368225222 833868673 959714040 800047492 660713932 489283 184768507 467660255 565667718 503582379 577600006 870092438 627529715 991727333 633175530 232934142 773643171 755673143 6197271 791426346 451627173 699311858 339686164 216307871 928053342 579057728 186120556 470088466 978492020 18670665 279910319 182105403 97897018 441790654 25692157 451787791 470430810 117363892 168215495 574377796 548102504 510005111 672770842 399636414 486967598 440054891 353152540 163080148 163495824 350728528 771543585 891590782 758655123 29151247 885312351 379416448 197911937 372480557 799114678 404628366 851697070 897518714 510210069 34924497 723730825 459012885 869081366 687300013 447001688 822455302 375553159 549439365 228388240 67019116 981479481 998299079 216665215 273089604 155138033 769677534 475491606 137097367 838763310 236346115 381098128 339604391 155978258 793624389 828556881 898407157 857921735 850014413 532383206 601222076 481109188 778465855 823082036 176217220 596211874 704293145 855475445 5760623 563283121 903425304 121936089 756978251 862610000 435400947 57787060 265717926 841223734 914710070 268270705 307000709 605393581 858328331 836524755 251186866 479365774 33568362 601356089 525882873 689832168 778658877 79504112 969210992 822918488 414350315 143385533 293283698 581990824 826482098 130178200 317162181 300654444 292339304 428909440 931709743 87315221 734304461 138585118 909544221 164159168 857444978 505657214 392407539 385992890 452214986 135375170 361235323 516936189 145225435 268641072 38565472 519655170 528225432 537740796 582371714 182184732 705145409 647280744 537333586 141442004 606483912 343677832 985982351 216744661 896607892 938693561 546056286 860633720 128071655 509476773 505549371 582845097 197285087 962705890 39136365 261435969 121472807 717173602 673701437 515058528 538907136 176185765 755653475 499459157 483473075 797564667 868492564 624586019 101762965 170548487 882178713 855450206 750654566 321029787 260526242 128166242 447382348 567195413 192593550 177681894 136579855 120851049 793098313 523831960 659635048 37408956 401623723 660763953 640374460 526781956 784776902 682255007 693183141 183023742 11239297 384262325 371323633 56149630 464127695 727460512 589905662 609801110 551303851 702465971 730956069 201147408 145149457 106415907 815033730 721236516 910135593 252160883 210089135 177657017 386624492 28888489 64272428 674221818 559177018 680297870 412741858 117643183 377513420 590264488 157643078 33578479 256568170 62906362 358238844 816337747 535144853 756040537 681522695 647675913 759248333 807632964 991320380 908925600 957837945 539260023 558162975 838555467 701239652 18506546 432587162 500729451 955037263 451549839 130388005 26551519 996159800 539108865 835299318 722691623 351019980 130914901 766903787 646117666 323287203 29863641 555706703 285698465 89937526 315431890 635481602 355944772 624758548 392341493 561931313 554315598 222595979 809445187 809983178 46785695 869001170 30969447 171858712 719693667 261035037 12691749 220709361 766111139 17435099 790821838 450748004 681928635 824038712 732699001 808156802 364910864 144830597 908614852 284596258 35682597 952296938 491038315 569471409 185512737 263503803 577143816 964668613 142595132 89994643 767713426 826468231 532456829 274746935 457150040 430358920 947763188 565471963 781822018 870985762 455881850 307777545 407137019 916220703 294701134 851308438 502878658 282646430 424360989 182241844 902620024 184510188 461557572 871798175 688636350 474317211 837934295 252502887 22644988 788022154 765923095 745076902 31637887 782415122 239609940 309503710 805736345 371796079 687124783 206855931 50471541 433465731 602613745 546289458 977395974 86268220 183653018 918880628 659644652 242536008 878470 144228546 948345149 56249562 724826868 11148930 95218768 775309834 294394010 935604464 707595212 310846393 331225719 992119848 976124407 387528667 68738095 4302985 933655594 932396841 5431046 814579342 977079987 483947705 483787056 818884828 117867845 180560410 326363620 367450084 669380539 373744439 773701043 770887851 141936740 723363166 896118052 592637583 138445418 144017583 381714978 246853644 938265053 610104391 734310311 116421589 874343456 363220110 447640998 912694572 387017247 120974051 108642102 17532604 38115 51734722 190764871 764929285 459176146 775993016 910627054 33934253 569089553 487607633 494486453 247378658 696496186 501068838 608085519 864415769 900685639 225738120 204757715 454549656 21833839 217993715 410492468 543316590 601586344 939795153 298464944 253004167 787599388 299399979 592011736 410979713 598228111 486487120 838749717 665086120 281809594 478102804 992318028 435919203 73894963 124243170 275390725 530256550 645083679 338430182 798640936 350963919 184307728 609261356 880791886 693713186 623963732 600326230 766461467 469488260 224706189 449472538 178147272 291873632 98694871 756834239 762001516 707432290 110440935 37529055 237545237 631070111 505527795 329035676 671289837 633881384 929418963 851841544 66459955 816110125 822932849 780777822 841899482 89993830 173426687 988243400 233388218 867934471 84592290 139048298 901073979 867697005 663526368 694294541 647081426 499959049 571522351 588879958 499413461 24872534 703008764 388810043 506950334 566495020 654588926 640240663 323702799 78221996 729069539 936613512 445420625 511769614 654707289 20351328 832990556 657942787 918393907 660557957 16164537 612152597 961050828 527415592 812284566 861220974 702620078 809673548 518374588 750561378 938437469 318729665 333924116 819018508 211027915 837375263 452436981 79089938 705604575 408458250 919551899 587877411 116406638 506181923 350673746 38663853 88419474 836046920 15728355 546176170 531185069 15904492 237909777 304366267 44235258 369338343 675894857 299930095 772059711 961275487 824065439 632948304 764283088 906800190 639374379 58053174 571366644 735081083 502297617 335338380 679124059 929383122 118799727 977034353 93688139 919612494 432881937 90783276 570527886 255004386 654099552 153357673 576742189 94495103 863925588 378407706 223357404 284459320 521598893 587000633 451387410 957982564 85566140 789271829 544979837 836733731 905192355 624816603 821615310 772467822 448652018 623271400 144025214 803457250 445053700 823540156 124529610 975658922 764096612 383076841 672775090 422617139 593840882 803038388 948783624 62346895 673358431 440358775 354024002 840884047 611948673 847218300 844453417 283138163 358095859 450033035 6455231 267965294 627905456 486608288 911981428 139261072 852586088 348875489 283956648 192753127 895769742 148941225 424182200 483514632 883020262 673431931 562774509 739647692 900540402 498726214 822644578 51913753 965454266 869437633 360226353 343864846 965721895 354174806 378867684 8054266 978512296 19529802 254655248 374367270 455212370 691032999 942130983 548146021 282007179 273863257 322684392 170664969 199725742 307098747 300924155 468356832 720264637 678265017 39362653 179970956 452819545 835271547 997576944 187247216 542458122 197421258 675139176 366747144 774320128 498059339 832184607 245584012 535129385 290327797 118975151 657779893 568206143 536462352 853521304 526294103 763733660 111999856 50626788 913928133 481202038 57859354 537356808 360351508 90142056 661008912 430707003 283593268 840115265 724478256 166619689 761450014 439735232 679196084 431755247 595151482 227242519 58963281 846805082 311629315 223342845 404852586 396183618 402863069 149376649 449342366 177705273 675650276 782843884 529505743 507086902 433702875 791985132 58428873 378215680 602781578 713810321 284084460 644914790 235100660 81348382 498334186 113300054 889270906 423851398 149351892 872818379 852668609 227181245 410378208 378977949 379068882 926802365 441078157 302313855 631827290 756424542 532696376 814019865 313368709 993782195 527641172 383153781 280502152 174388889 600988740 710865480 694409053 266420613 613404916 524278589 332649569 998347779 936087442 44314115 791271825 384490920 386185334 807391767 70815316 514564785 635178749 818357672 224743042 141246858 478611393 464754521 32549692 331051913 2397489 656332297 630376785 439215850 175114952 368159312 637892498 801818511 130421000 566064456 500330680 215932332 599909005 383112757 112781544 793785408 336246532 445030837 684753349 426653595 513849343 49717373 738777759 67950180 802659731 319884051 346307708 4839473 902706706 852414699 791779497 618949699 909944386 961196223 350986532 770377450 474714891 479927275 366086451 520176991 216582067 169706325 272183276 253855918 166722236 132909638 377011453 637625593 929266578 198161011 32824077 384478157 32301060 338801074 124841409 318904294 493557769 16937589 358201401 137251541 388856277 575815523 898489273 250292238 493168052 206155471 351763424 377039001 858378590 925083199 743894027 538891738 211695432 523865020 728306727 361124387 633053764 77621169 69912168 196429848 716454190 980095894 677856427 792005711 49284356 210335931 515774160 704223842 144915502 956656056 107356375 806658002 420208296 777696359 434742422 607307220 726023400 502104607 217284298 805825320 372674787 730700161 767170707 798366407 934478444 708769642 938684485 259933352 906660129 381987825 655920148 731768288 271576938 822984304 112134052 609143000 629871804 713277101 146070185 719128109 305376131 729581657 425049128 864957312 655922098 586274696 9715604 269144125 764917766 107922439 509171048 640934874 505941824 874415981 712172114 422217196 372262785 722355692 486766753 516535004 977219134 451282686 383493985 510607306 574645193 583985284 106499322 563465826 802046463 927961050 98114224 805089601 668756939 689169055 55846947 926955798 636701965 777740546 429818145 489450325 498496116 987209452 208595803 120808910 989063510 693349538 626911709 627860708 311599969 230464052 495882747 368564273 654854523 971236740 640192020 7113976 379935887 771905270 960849096 461016622 704719227 368658783 801796110 649427750 619743665 439594767 403185311 110160254 701010424 259661117 350773381 356248385 304133189 456032545 226831212 959080448 9610798 921581030 919650269 941107368 914440082 824418437 124386830 671450 355490688 99699039 691032324 472267530 808720738 853867319 539778493 956524332 861953793 533060000 916070772 891062707 29654231 342961846 611080358 661531599 359995352 906707138 323101960 706065500 167707385 913131521 60799682 297267455 959131460 162311192 733075982 289841579 866317138 704899728 926290532 326741771 266113909 473292001 355562794 656725096 900094580 335410607 57511959 113583349 698579224 811359457 703132743 415469875 225291025 361012806 245828376 851314822 813150391 981238632 467590736 738986526 732067679 835187728 557936893 790119596 232523788 560680669 19008067 506429431 593904518 716292670 608309275 327645372 283598791 632512732 204916813 306787008 89985117 130621704 155015958 949686713 168794980 48141700 328909268 390878650 349022650 165765307 784245189 65088228 948431977 141379823 948028723 105631310 991140493 746681409 600742378 307985507 744381758 657202332 14926527 836439602 266391132 639848320 773409655 161751286 291171602 489241838 77757141 591690861 745350649 772730309 79573040 417095486 746652215 66699443 684303 788847312 881790683 508871315 483133607 32585673 724082470 455485397 588995822 668800923 112951851 165410313 830606242 179775920 792909430 737052010 173255114 106090981 160876198 104090384 420491590 829645058 226637457 909285697 222779218 110879217 661173279 115726767 88442384 26816428 966261684 580701900 173865887 663349754 888719449 57988686 433547632 450698152 980033976 486962571 912022579 483628417 207017427 976692227 193692859 339174259 109297659 698855462 652250250 509404916 754253782 25839808 532496127 954610048 372291344 689514449 210267328 614468375 598572965 965047279 428478307 659358053 993872766 945369084 246952661 186007619 235740989 480869019 88349731 522333610 877828652 344072884 587422461 13255395 154497763 751394792 866478133 117677456 680514312 405229887 608028598 800962671 656230315 151991934 289617859 116780945 920191200 645258891 600963380 110705782 53175096 773400879 215192070 236548734 731089148 666023625 467564815 337709100 848977701 485890279 729245609 371283998 588124719 185209544 908729915 287772115 80221209 363537072 575744262 688671046 625634559 950202695 295311076 60367843 621636498 205799475 300451216 512914800 268268146 631789331 73468188 733311504 58664301 20614974 945103706 451763256 192788637 229657224 530573871 48316707 756288764 461357966 312520580 378967924 425225849 81384999 20328949 433097630 758641203 82924331 970103260 425795778 267726597 433825225 525798396 260069484 981187989 881988765 297199066 973114690 951171288 171934084 409414967 780864470 738481154 577065689 528223097 658059062 985810080 377221108 662803165 471897583 780839776 659683654 933428024 925945381 764750121 863360964 682574744 414946647 908595517 357198852 824999419 761098577 660812663 673551170 629203138 24217212 636194487 825759160 578569110 244509713 181683794 800904863 608660007 136954628 57361372 539226828 844931486 81781385 961081463 419612122 733589056 100535426 145243396 387052894 534609181 137333075 479905888 903886637 519153612 910177131 261337917 341544792 400410060 225463451 272986592 171250862 414799617 544483647 474514385 383547218 728089114 626841963 197036561 105712762 926619103 6833433 483874318 858674386 329722063 72126678 85460247 158173293 133331749 556286228 841312928 491698844 164085613 115463008 481800541 244972327 292398495 209246205 124279127 402730132 495260359 137221026 756133772 810149116 42640558 433171226 621541218 738199013 382721222 61905025 479738099 338223987 789744971 381865114 814426406 338047866 210291862 657073389 608387017 825782701 990595032 79007884 593409178 922150714 418094126 201067816 19090646 537951341 582526941 924986064 219832665 218674555 970985176 311063141 712622933 222537235 341028311 895142175 9740027 939851019 104090537 577475517 472560957 645707879 655991600 255752854 735743106 33885034 496423533 310476286 639034766 854339726 835445618 62945042 656594501 264933889 946503827 119341913 267597223 244086253 693807891 71420918 929901479 414145977 346550546 961218350 541560979 352295531 26175166 804827206 670227409 646634559 181828813 193299676 153366979 544587362 375806677 758462989 985675835 156404252 995947030 491258358 387225530 907280259 38798080 325091194 482804584 259481857 917953806 390263240 72413234 306802162 368911492 20913395 87670437 38263991 270024974 711086808 939876170 734320852 435973252 465678733 998068351 671953350 19616172 848914175 428394557 951264320 494259088 104569090 779873288 783204243 928067470 133101160 671289721 914266870 298651472 207928602 215378100 242074068 203959695 47655124 920578177 894787726 696505903 433794555 962103527 829334581 833054421 284073783 129792722 589792956 570693331 211454711 171941414 656459361 807667779 84733471 977246406 650056840 461452746 687904865 725963892 330600261 571583890 334427567 916313977 279343108 526216906 595698298 987390586 302291677 46743679 817436019 52020600 622840476 235237521 317161036 538029080 507010563 386791672 84098338 904873571 535892264 862310226 199217851 91607745 258610213 276651989 405712250 38123717 711856783 377699827 825935913 812431374 220567883 238897258 187340294 94608712 690834775 281660474 671229322 857615991 469731507 372782320 555159224 137069871 317752981 850493762 103431918 395652026 720504346 553535693 741891229 301229126 516029257 59902989 348318215 441502398 33346531 257538060 525454614 530710443 933052949 71616883 484290142 842902961 483269037 748668992 614867074 228688596 432225130 312704288 627178740 579391963 353966944 482957838 554828766 590486433 759381935 649534911 679227048 724710187 192537425 681624202 925130455 29966380 761103530 127934729 448298296 144403036 519210945 739668786 464814244 755763326 286619637 33746463 343050272 45255521 557193077 697360159 455362131 927254898 194021096 441065566 920145511 566844970 934465322 589473748 702576881 536479275 211962452 154673425 370657607 39685301 363910801 280238490 255818792 825409694 765748611 904959986 536513944 790293195 935055434 751472177 121175114 446316736 666140600 367059696 210052264 462637599 716275809 761851739 908099416 825145318 895140067 184508636 973616322 335822712 865652939 716709791 285651734 284042168 384539232 152105079 877525433 919996778 237178058 685600275 835410426 156600904 863742992 685493838 816339156 502445379 634762529 511729642 961641751 611592236 979286543 683762987 928448805 489529796 205606988 773948522 34492043 598391004 74510776 257478487 211527379 234259814 81362380 167132809 704117782 581647727 344310387 319896279 315667769 707939943 531623423 8286257 822114203 615468450 197619906 253540233 523807578 896262195 301702269 278596881 56513591 906289963 9623148 49867155 547369598 277520205 905937147 880486662 309503661 886069265 589507446 247753738 354396776 379984387 814405737 431845079 296719488 108697511 523726565 892903223 492270959 250058339 845195374 840489600 773858685 913373991 424750117 175677118 604223053 940513795 335740042 991531984 981134338 115858477 329087318 657881032 236488995 770540477 764460529 389801260 300036623 606943827 150171962 682031131 222177892 512602315 502585935 199075402 831616989 826591224 935625045 285714113 91002795 410123567 127930934 26333736 451917438 848094324 901163552 23708223 92497792 611707465 977862669 470297487 966937161 819773386 165535648 739289277 666617496 108405008 559918700 311039044 688817532 826484459 455238248 220942410 615442368 840494946 13588387 744061255 40207050 272766225 745744030 392088620 192268386 181640659 793899097 5723214 691748873 324859221 508307560 69470585 792678042 223148309 963904839 399064113 630134355 642807619 43854780 705954765 22255791 448994800 867961502 298792468 217177151 418156883 635717944 575307195 363956158 421764515 739154007 357725553 65813816 454851108 493621212 529244031 508740620 423149215 734725921 223514125 544348271 892339067 995428459 60911546 492098934 151039308 810287659 246351873 761146554 36630287 964961441 785253432 14638168 641888677 533370321 224676821 793597576 420783129 896763504 269215398 206085529 827103927 821036131 113632469 99819834 321101933 926214222 931429092 159688202 689738108 80638011 342787202 244257262 377693099 731256316 70555199 977522574 484949820 13857216 937036077 357460446 41889744 504014282 436236119 609475177 717252187 981572750 818173038 267824518 377569522 540927175 834535972 444123921 800071212 812491032 570830270 42839154 49259507 750694587 726796478 976218503 626826168 57650647 532430798 588926783 572895093 371923318 160372754 968204776 660691384 732642978 71865112 937588266 305124424 293195048 222602289 855878204 462416182 653939618 245613394 927065571 506605505 285696129 107511563 950644785 172054643 964226187 255948887 424196332 157906044 837848661 703392297 40824939 107132306 822055982 256302941 892541192 948453532 943326945 781466021 82823967 492423108 520261911 17439500 560118111 798538228 17573039 998623858 381487521 248464014 802546996 717498230 574328710 507603195 463461961 812093033 814200478 808465652 290023744 177204093 684934208 425485754 942051881 272804497 964595677 823689423 140095952 474999991 201871044 835077057 966078304 891074761 548507257 43098062 718148025 674049540 177382823 625715328 871010307 77169287 38239945 43201824 383296421 654167133 559154499 843396566 62350833 638381881 828636445 299110088 306310586 378904058 802459030 482492913 71266831 778396993 686855732 421154990 477508372 934796921 933207236 836594440 754491967 190561555 812665034 543760042 83865525 286054999 12848137 276665033 96980181 677666939 816888657 609865470 267243979 15681337 504142591 891149089 694581126 788078978 128646414 448452721 845628039 198332521 472910909 34865404 271974244 239098712 182847051 589883528 307573763 376346237 389880125 282502975 282366373 834383578 610743739 386894444 390614168 840677795 789046345 415782531 164852831 139915676 629983606 854541002 976973701 930043918 855333793 813525322 956792260 541960466 439282100 54928280 943635608 257766340 984968867 464253818 956715049 659355538 380425318 6844744 523868631 399470647 362618656 971695696 397355379 468547994 930712430 955930511 242786903 432366761 87819598 763830551 777538193 234698833 684501624 132967041 246064063 599915672 963304154 72927264 995682749 335380969 19194847 707576218 394732321 880485635 563960873 320966395 252252780 55379814 504700756 383487102 5694615 253328426 131160152 376311318 436976677 731703488 453020791 21055844 920378874 219624763 75880551 259950991 100272097 936543512 9872144 170098191 443131436 889067938 822007762 165069199 224806853 69027561 41770646 216575102 771139795 822275689 540244229 777795990 660329228 632811048 787493796 159787005 830238686 975764120 50788285 62395792 730785221 401164436 593868237 678658881 438055714 570775932 376223979 324600969 318459014 713843346 219239325 193525741 162015368 141998899 723151498 390298730 903307647 981211875 884795012 432155440 648810088 10661842 653032498 571175379 412069398 266030405 658814828 421428090 200263560 218035990 708923918 211296475 20953886 114050146 413846366 184669780 854045215 962451144 166648124 913116786 909247104 444496893 302053844 698734923 452884225 903221239 602873985 275147608 175522655 294198305 830580200 353383094 550920212 221425888 134357685 436903907 19097456 799215510 715784662 837850085 213558826 915411185 810823964 955641719 499036887 389706993 335213047 836152719 863429710 311818469 765506691 881216233 571539718 919994873 385652610 929552288 411035217 166356479 981412850 52857358 853948939 209292465 900008596 175809533 79177964 437750340 672313263 945968389 161334983 297660334 785659235 66503588 688307611 140986856 491163000 224395617 627840632 323655042 797104121 884149956 924308313 686552315 246053870 370770766 77398502 377631791 391794774 762185148 123535766 964775803 833499060 530473998 694309373 802542949 606012759 818383762 486597601 797848146 707635197 714377628 309853563 990539989 686754555 188825825 150683129 995434846 790162344 398751895 2705315 902226392 266768065 802599963 31577312 692262289 319865012 356975733 161484477 77921282 367926677 850432888 618689148 950920653 696261172 365564447 197903636 954512453 61267467 510959820 910887429 30248594 407518543 64139598 186743970 347766775 613349183 230075937 599258519 138102985 552816356 290359344 156818105 167541326 894903137 936714992 322411365 690277898 222477094 469085831 930096995 412625154 887729716 86922363 262223603 645862568 227328268 258935141 241572774 847902401 235496021 447927237 394466514 20421299 172321423 38040043 363539929 225945409 341243188 545209481 759944319 530870311 799370490 473418826 389743360 516452780 332679702 344766700 985478458 420328730 113258100 865118566 139539190 372818092 877453022 855515442 655059708 261450153 824554330 776219832 653348506 71680265 219986398 902107312 389506625 793432181 276139276 1172540 500078911 693943238 783592738 475534998 555168123 630533108 464661742 418269982 934511158 744363763 65876236 472816387 681020404 316154544 46351067 953954133 863448633 291544594 685485270 56558229 582180353 915900130 619960056 458059832 96261017 245613696 35613459 267737377 6587936 724775440 79956882 376341084 227130170 295955353 834678619 587545183 220444024 91724 600818450 994574049 922562347 910785724 943547676 420408384 452104466 170597786 684274001 386647077 105022745 954767929 869441939 739080299 825868189 736344257 276961710 216006121 758137305 710980523 316492825 628306612 169859807 319063702 180631718 254990537 579753271 171631937 589327446 916712307 876566682 898732090 654329026 875579447 348322 272075130 73530755 183592629 345510041 444577084 509920863 376444206 108252803 721924609 320395201 426669662 833372416 735354532 627832895 149069693 602688817 277711249 162710060 889695372 43145480 24544710 318091861 969561757 156043203 455614685 30995328 47044318 585576971 853799939 995395719 336389906 44651817 545934238 896298312 633931418 119520804 347360675 302257119 834019862 701113118 100816898 527502277 695165119 526478433 599226382 518852067 996840554 182838204 422927168 140446937 879482349 178820507 404290126 174977380 648602585 283599656 829564157 33859285 647182956 678834782 683339963 153847009 565182446 563362647 732188404 752448951 984099339 853365598 332041456 648127824 691103236 388069617 423809803 67882067 107368683 421242938 594218978 649424549 706247349 28644271 55539565 643211195 629609478 636862682 339730123 36613230 939189262 27421481 146619553 700285550 965606226 301921408 246904776 290547583 587134198 667642026 947525365 751224989 551404837 366109316 360761044 711119655 177462874 484373929 504731274 677852523 850770801 448531457 411028665 388064835 380359681 158902634 178034815 289206720 631560858 163337010 536049388 837743864 2992933 616268723 495710753 347202156 470759131 705928633 76923672 750226997 721012411 883589678 848831761 825389656 962679210 476711612 408602940 724703783 300086812 18464216 448427192 839875820 203439486 268414599 734549625 979687752 77945820 55579892 481413660 758095043 914779469 982522177 63256359 659971390 412120351 107436105 658032236 603780418 659263913 418103342 846168228 52369120 755389343 397089272 672084552 974651139 824142144 397578112 254525144 777581065 168651299 157607559 894751569 545581308 433690111 314461105 278270283 163780207 898226990 529484616 984762799 731103026 783622770 625260204 914092686 304066249 304789540 12967504 996173458 803210117 454073689 215963616 404774321 968968079 444005097 217606369 170700218 37280729 699355851 713127815 119771163 841017097 748766475 683380955 566237141 385915820 434242975 947016800 337739892 483459702 122275811 608383629 546042550 327310972 838357302 485595262 703806442 250714473 458351328 56357559 215148862 865390351 252044983 95137026 386565206 902408621 702302055 815629684 941850359 424476024 614110859 337529663 652746486 635246242 635453852 622226613 638677171 398454152 844698296 976242541 302801746 999943664 896679689 250515410 996171137 97996652 100297654 738083731 286237644 291785663 642274245 348240251 118661452 917863125 928275007 172325266 581802868 337812691 261848050 789042824 780752049 286636907 118389867 515556967 443130740 891251138 396858408 223656260 254202869 592461470 469098377 315618013 720775909 557261344 628805089 726483349 341600579 52769866 511113139 191299755 814645023 77372120 658997891 847940561 505971690 422123454 106239992 737427704 610091002 878838312 356530619 481256494 369664409 77607358 117538124 868319732 887588310 882512063 19821916 555480809 12652974 795806317 960075795 762668651 673036684 537183702 634742752 648336531 598026237 847337809 871143007 433771204 20892671 421175387 276232758 485539533 663390313 860594967 533361814 468897742 371382590 518055904 782890805 508624562 378374152 775498300 738496763 376877470 574523617 725270250 547586870 700503468 547809493 500199804 425525869 431333226 731713022 5309906 57756138 772348949 494973450 203834395 243706435 362580172 9185564 621593507 46559961 9906442 724716726 168724942 344505837 558165519 724418739 305135323 266074834 820092549 742817532 12926276 582122774 842545208 256515532 114565980 236717257 401709907 607868043 173056707 233345930 129783089 420060457 422531225 794835547 70558911 691379442 859756164 599495350 572443198 534592929 982499327 957751489 442383842 522031965 208943237 726010318 242757179 763464406 649935846 617079678 619757288 590806139 287660538 701709942 604969073 736686255 641288378 185183648 43973449 586060657 566704460 772341373 815275605 727814087 133367700 64410102 421912100 745239747 696554915 220633826 730476933 716014000 154260595 33740303 245368971 546752662 389541803 460004198 264804330 623904232 210427850 37528261 259102179 483150948 449599348 835455552 972681211 261218779 345787799 500047320 478320615 610111461 22086258 92828797 203875709 225024987 639386175 692965776 552451942 741302168 201090283 245309107 637458846 761648377 455751947 291274345 755603824 312900016 884813974 384267974 947959704 10153250 148608065 729085975 409772676 281332624 60202956 510453688 578081004 485733415 248652147 999694534 635740811 284639192 533950060 389163722 671179569 608876612 919565725 519938920 216028188 272870062 63232672 93378122 307492494 176519613 212603250 660851103 990771271 324721670 871315456 332047248 926978196 836714174 202106078 120825777 85088711 835653095 992195177 692979755 24635010 547221474 43062863 251219518 898594938 590226848 489694167 256645147 871869014 463888724 752907913 503479123 744929029 725827199 860359535 904736625 437367115 558883591 782009019 790429710 134301661 885239617 6553708 455508685 470170972 493253046 611997599 27318453 231394635 524826804 860073821 753959645 615411723 579820340 145257839 61341908 564382416 971906367 204464855 285628258 651264452 574081197 878735890 814432464 458502375 279527930 768209554 705488416 295562174 118061799 644998357 356074901 463090826 870432476 552886993 523985278 768179298 153420022 279304432 984875596 997746107 835178202 115051110 502176434 82125886 533941782 553431169 210250562 860721204 128640509 52992456 30404389 965171217 396208772 52832630 617299160 717918024 222693007 940139931 917703765 4597307 141724258 58613504 105954374 341387702 494605908 859913175 127693559 368045169 172365977 870002721 445405576 163585538 436376027 169154100 982088302 57209501 509210493 358610064 676032723 891670623 800455458 835447270 385007241 196430276 371490330 416461889 563179857 665468838 535127023 605673148 8199914 355365484 603611364 841472248 328845693 763664548 183068875 246435994 766554112 744344086 342037776 177911132 33318742 256370375 478420422 478991334 576504949 289108441 869752116 158745217 504983327 42815478 827697000 805906244 77272969 630120427 169063669 616628907 723974391 274975069 716960242 833105523 709878663 670857356 377950808 422514165 35382162 445696578 423562298 914918806 695145250 920814223 296060947 821517112 778301992 244877228 9674420 700705438 245492461 15663543 924685432 588135993 843716879 352784283 746336651 172903333 548525145 25922013 488082768 265960649 394406315 596135005 351881305 748833792 152071887 232768809 713554930 547532338 77320303 543361277 484197624 179917564 299217975 663357269 739638995 213937386 334540498 839345717 384407204 952501015 277869284 674584428 83947223 241674281 829582703 394839674 109011593 854465169 790184742 999463764 742017247 793682570 792491179 726024509 149308627 218780733 779197508 921048085 489966068 121636444 321988536 210541713 720474637 743131664 803468360 498637232 234742705 724279567 484893985 14122692 199409234 67487954 299810072 61690516 344383644 434545251 498488080 276345691 557182960 11668633 389851826 2467243 498089466 548276471 611082741 185135571 287767881 849218119 169898315 492364326 982954585 795013196 165342722 353316869 431646159 896085551 836579521 45105651 215813715 474928977 763970545 541493299 748299155 533324479 902461377 184946552 724642457 734911304 851517258 553008711 548960901 594874569 14924812 326431342 759373696 601038071 980909649 400181160 769150117 864051167 192926355 570007147 626075541 43546316 887155303 675906532 211653209 750731425 374266055 969395782 266698142 170032000 990369179 152171012 979098540 63893951 600250732 586498763 994051228 249945978 7317619 595417824 550074991 891542602 229929361 980197994 242398836 220436218 114933344 120429944 308870586 937387708 207223876 802567444 31146995 476449815 229340145 981721771 769756121 83834435 273329455 742804602 103831985 665942735 105517064 11853607 796880534 177872278 282014515 299169477 546064239 295449334 238969647 36125503 554474085 478822212 89148365 330437576 190860076 200971578 926910888 786194432 418138738 831301829 595225037 57709665 730999367 476103416 659583082 429925985 788783346 743903402 847387469 889199984 947752533 637818153 365703242 844159891 145876362 712696172 499804777 167509076 325876757 227440034 670036180 903251663 842897985 94598973 372083179 81339210 163379232 700372596 241533510 81258713 529128896 923348918 629847235 290583944 108108324 617187019 773623808 459611836 73598019 926589577 107349577 55720375 448490366 633455855 868750318 56924785 326784509 991667142 566292620 915496636 974922044 131608767 662826768 439413184 139560260 967978197 191468698 959420381 200018673 784478935 215373779 323103008 926846422 605002170 740048673 87895126 420933114 810494843 689499577 249763593 612957337 468616103 935569473 840514914 374260452 293782933 149388880 898029025 978271373 427630245 511499580 22226916 8416027 673906539 681834050 317857162 290251557 995969452 542209137 369995368 700882532 693797713 343401760 441583128 470856018 388715413 854185087 236179707 443206759 841811569 467973984 43025598 705932602 981513143 482087720 915465762 308669861 866346182 393177866 506352069 738426012 131133396 69508132 254602807 760853444 51151486 769177607 826417040 454290452 612057888 615131835 181430666 77479982 783145032 233869047 965765575 371699069 672421355 656657896 295190763 99110148 203943104 972676144 274485286 771578761 66401965 823946946 441260486 963118283 390358003 275516775 306614293 764677864 882583860 11584952 305589258 342966998 254243009 526990707 180287267 71404597 659278128 822146210 356049111 336462605 120996630 4401612 876459871 721675446 75200220 684990478 603091114 868755367 941257739 974970490 221552634 250721053 157598139 240284993 565913503 997653541 702615381 662047665 917916958 23041220 755765324 476505072 725524786 131213304 513125513 68263388 822603983 844805339 276843213 568368004 325202668 62606901 226217474 850160439 963605473 203946980 346508043 994201656 33320029 733573590 396736114 177059228 516931512 315491170 447388874 111869991 746229597 244521402 665483774 527019670 739661917 152371437 844837711 652689853 39543976 924084394 333480323 439448823 942367076 126260133 832212486 959659142 853476215 858444205 609727218 767208315 391440468 710000004 371874923 923279922 950762736 486469883 765490278 994384652 165083997 302456848 729389715 131519918 897506387 928398934 324841218 485168940 405115746 929862989 677091974 163796221 511183389 45515977 298974951 42375873 696376147 327675070 233186834 664284309 591651759 561850981 820929508 249491285 953686196 844567820 414524642 832051486 922695688 846220747 89595860 225416378 214416519 41798568 477448196 814443693 278650429 209835195 320201068 710779507 451191953 131058928 137460239 150247844 716264854 259271574 250152881 127992438 793002142 322487538 960369312 258642876 234954389 826637236 456371623 746956744 419880551 944259680 257734464 738244832 982859957 695904633 667383759 422164048 90488723 750413706 272075275 219654118 608976142 769631431 514028588 428244628 762025352 729710398 635266271 141300074 811265909 525813328 461804233 174458199 939518723 730724865 934529590 91135264 596610841 891068325 526423781 25249594 442864577 125678454 152424691 557874520 178763068 966725126 746357704 953470900 970062195 151702848 930063554 572665387 192535697 798034746 439972050 408575363 641441885 651004930 655814006 239754624 985305072 758758933 73339964 515718013 963929322 120893524 686366262 279793604 567004312 229273404 68217514 300444827 853036766 188377445 154051944 182990592 18775313 926704741 318823845 840631766 611006387 634971034 247532199 983434270 420478076 93219084 79834809 653631117 60876043 16175176 82105641 477324205 891353275 983103252 676077476 727266703 694593336 295214696 659663332 79138545 713622531 598387009 59009750 936980555 921976556 658395509 61026819 564163387 692725111 279740894 445205717 546556548 510025273 373908016 12073654 721306306 245265003 277511775 883562559 425598426 635357668 389994956 275109146 898514730 572451208 901790667 47429464 173660258 86309181 821821661 952415942 800683654 677362256 700725784 641076477 825330570 877215127 596982527 562442934 88477426 894342797 606060593 990875057 980911659 898377540 755070980 215005033 353990770 83509507 691659273 535529259 343565111 542930052 870343335 869472999 970100721 515569778 690983479 367489500 203353490 348223049 645781025 304384045 843424640 283201036 106463617 433519338 662497100 840626868 875024835 746275024 39458821 256639786 129295666 918893678 282757961 257131265 957110803 485630924 160039982 460999486 123428844 733625711 551312235 677554418 222537255 481063576 83666613 73913074 698257755 894210457 28041235 555680615 517257301 300891324 340658849 527416790 110066040 521555343 823424334 549566529 966127175 866311345 364988527 662032867 475784961 927130694 486193840 896802832 14675520 88593920 432750709 247220017 450306785 381168109 403569850 576228163 230182287 905022080 909668889 448156118 664444524 374057792 340923966 124656074 75236539 825624686 271574989 231395316 442976314 338968706 678931108 446602341 770077696 283307900 740288842 62489952 193189976 733149976 539107427 996351419 206911581 372427312 799091798 560293166 758658323 149674399 378883358 260733002 173226736 622135254 730807333 590362675 813379791 952732716 279152742 389266086 112185537 138474636 509218830 143963488 504314272 355743528 812953192 992561765 768078395 990773196 550211948 427753814 654051849 189253238 761884676 323923526 729448130 277975632 826827699 922522780 355228660 120154797 572013942 184019351 249654275 253311174 702556766 390759849 774663 270426779 310789779 368303157 743372420 770665295 486957707 743363515 226815921 713065067 692234504 833959956 77339910 179716182 546570701 225910460 862318215 620986339 619257405 950640931 256117390 584847494 812058414 502686790 540658895 660016895 77903809 226144471 862215583 56135931 553102647 920313607 242495611 442813662 132181101 757433704 725198561 158911313 596117317 214388172 317777522 266392312 761378836 865538407 690920549 646138959 89579537 793345958 678908673 455129082 303904358 630282049 283044290 73357479 808135152 530564388 162565705 403178781 803001856 746292078 965804615 143773444 800511065 581074758 420911027 923649898 437132495 975701776 567515947 347313295 784018159 309189354 247413290 336006436 258220715 537144069 392682889 458054701 160391465 568911457 179702547 508882015 729455307 90732871 192117964 731290380 147043218 435829110 570272632 803039324 935790627 536774700 538812312 164938688 793728414 408708261 122517758 849039507 126006346 74519641 194374811 240200246 558235506 216775986 241754028 543464728 748486225 443161613 903587823 761673746 969524914 110107213 36791007 724871400 9670344 735174198 885123388 161528723 649522553 613485068 601969402 495893162 650781648 618714478 468620774 42767121 609139972 178275122 879421926 502075503 323119857 263554450 142373600 697132520 667163485 858389867 231239559 482672537 361530493 199259328 283864760 375239028 412098419 130648887 386919326 552372521 385127205 91051571 132157970 381000886 346764899 646278386 595344860 733534447 697774807 896976420 989195378 161970676 130642092 114142726 235639045 973345670 5809167 384156566 161123758 435867703 465617123 921433145 372999251 899516587 581112341 835112467 785097782 788089369 417991739 433426963 236802221 974705790 178493819 61970695 803550283 27725614 162040831 779732486 178186421 498983514 815367439 385258765 13772 223893919 365878630 628173170 169929980 475537192 995082650 2284771 793744772 366189050 81379522 399479741 235206132 642311977 962547657 53128689 128958303 320558285 839498137 499296193 815009409 991213488 717042411 271148152 681552003 549138165 434853095 912695205 819570075 545106520 338763916 768636466 282278741 245596601 964355276 38729053 245099267 349925012 477880640 769239008 748949560 679479995 141552160 453647269 115611904 413395655 814481263 712911499 963088815 420614080 225491759 493956903 578533343 205062167 386003027 720131261 231963151 399913006 577143326 213284211 225945634 640125148 340269261 439217355 769979742 106042733 419407842 700934049 408226773 600434010 242404280 389633650 904177077 942434460 398395648 467790072 162923905 990425341 99775080 86678867 634029486 893622779 722799187 769855645 294675458 20203562 441795171 77473390 968522987 800982501 14072966 384444264 906230873 245406196 387249801 339658275 242604204 699093276 209344578 869585147 612189106 475330751 155005197 394630022 886412065 527891452 553464030 854175281 579511342 396582567 973577329 55486813 468084087 305145369 685352222 193384794 440717204 715768748 239913727 262577035 950871104 320420955 147374993 342040273 274131577 100257430 526693097 923768811 416541197 834397553 80584358 805706733 103481892 618946152 895908177 158567782 624580977 275452616 530518740 169240658 174575081 455843636 487372517 318009149 160955320 407760895 129083631 423700253 201679532 376717898 615660676 709553588 979426853 496264630 952180649 960602532 20261935 796120281 150266919 954576654 6779593 908686650 556400456 91679871 520412568 34465724 816161836 375071925 929351372 259566261 496023940 683876147 472698840 271910423 606666225 736445216 77172221 524655381 692323906 516098811 258440960 152655673 297196589 182251407 121714392 942176587 889883654 792287219 739437544 925616308 740884843 891173857 378788185 743279235 575381340 147658160 996708016 842930208 388056842 849850561 411775496 591058799 126427289 781819500 579709899 856069455 22108602 427555383 304627854 768148669 822722875 306780295 604178254 494314082 628517028 660881397 444476712 620670924 52735744 702673639 60235710 912156030 310649785 83296049 153209447 264504032 449943250 498339486 448038506 816177872 540036939 439249901 164991038 272416637 115359682 753788652 930707720 891503659 509080581 706071026 374002595 62004184 652694666 860237687 988976009 866752401 546129174 414450484 109920321 721015813 346722911 22570774 520271017 139091401 386855713 919174188 334584079 178328412 429778877 996314190 143573782 710745748 535692227 65216055 540019706 300973906 17322111 184646284 664291462 459667567 373921115 255663202 141117134 141553569 640327042 68685612 641813429 248193271 705372460 161991627 830923310 71092797 340566254 492098418 557956234 381085462 981839876 979428380 862116579 556273464 836053058 105358213 656045904 510590996 537940440 471629805 221991528 277208690 69006355 550233613 433884927 993191766 860699781 619334171 117567962 360832589 828234707 980982549 435023246 724826426 578450212 315098444 395915033 110259265 783387079 733370322 92592182 452355058 903865060 129306276 535681251 832877296 975984834 575389170 764248546 978149854 782888043 544465831 277170941 991462568 925199987 595758910 465328062 660763960 120873988 120115179 864221637 508857602 359676186 78494184 476576545 452333073 643992146 881553216 32065536 907617084 741215910 596919275 329293043 95418700 678426974 952693548 669150226 738438994 275816068 75733976 443876010 109985047 276532195 540754889 673605579 488645650 493255885 320234879 880613152 939081904 957392426 192651038 842148188 58629497 394870135 281696136 184846307 782323401 583565082 15908509 110325387 609997124 298339047 941501884 766365434 820915266 199740309 664195236 825870449 280582159 277183669 445651641 350472794 329603138 914714265 905244242 49940841 684827944 407500047 624200080 98287165 564567690 646381092 707672793 436885998 955727735 851539266 525457100 99879319 62223319 537947072 764514090 24386149 362329339 197671310 528011037 306537184 630909366 91225461 931600671 479883577 578239741 521521518 584311717 10727645 331251241 625205725 794488896 164882854 907652811 64658303 49632250 958824389 292654424 984412854 495699910 264479651 414929908 333212772 241675926 159694099 69731296 433453335 991161715 438666611 80505058 927969672 775169763 102788257 109867722 723105828 109470063 463644297 900342692 256336405 226517660 277214852 254840874 804675250 915343704 262423032 125537699 465261306 77303837 367890219 915494758 610888842 158818568 564489235 268359830 376515952 103388915 90778945 37887585 185337938 449797658 649240060 439261470 470256023 907901930 685355333 262749278 161193789 509584705 435810119 88562628 796115679 279090315 860048577 146837536 610867707 600133226 918465225 694212456 254810488 966280047 907107974 455438780 746535011 170640394 131489149 342808915 19455133 103230182 719216415 827737672 570259234 894166642 231726482 168222208 910092907 893756822 589872672 281883859 145155390 611156211 894217987 187092075 385326905 920393705 82123920 925766567 628487565 275278912 301235729 449346353 230350367 790467672 936175524 750692169 689484724 998836134 68546331 716543104 730552422 169844798 30925796 552457266 213293376 448221300 801081309 753425138 200013684 484462879 807178789 646362502 226020204 180652255 851124360 490452747 666004569 92147763 434273371 204418627 752362923 441553097 49778934 653778490 519382008 923899649 852703965 560263728 28468222 60461440 269978805 797342855 952035299 983403610 598845340 435603241 782768915 999860757 926891430 801034522 226548690 24538882 297942911 189376151 359750923 922183272 854337031 730036416 529611537 802337994 777035841 949911971 644687104 668859644 666299438 466532691 733316492 377697366 370861198 643325508 340953118 38558070 667077818 265644130 554051477 783063110 545939101 247958890 859073354 799423368 973984863 73355071 842775799 502778910 37894950 766765912 437080890 534439192 446779920 576614124 590329446 834349482 931385330 956456799 808021024 604870490 882834337 672618670 321197113 690698888 225382208 986234325 177255608 860356659 992101532 58946271 970417207 740401062 751695948 460055869 258780052 873816908 62029392 67726461 795783655 744470042 447813339 536768823 573509056 911271046 484436783 976603716 111479029 229119008 880111252 666700287 567700736 610069964 271029118 703307494 43599996 516100827 125765300 53051364 420049348 263607692 853343932 40858171 520792316 281097293 793126522 621278904 197956830 337171716 174132345 445485940 326208335 771310155 868996225 391117163 11153168 59352858 138655397 171325912 203766049 204629955 873673054 5354748 974251166 140378312 151564420 481711412 805923706 324878162 205715257 626920067 73740857 330817844 517821798 330887606 103353458 377347630 630376601 453002231 116001492 732549748 74059365 781724382 141165261 198432659 185964473 194951177 971338642 71895707 670893180 251923290 993349821 852559281 236585231 806057929 624337301 315739884 856741251 998418603 369501369 228333875 492756186 392763608 297129376 648071081 788482395 901845974 772873230 85540807 884266014 4851008 554483814 191168764 373489791 724081488 840709169 475541933 240570022 843801684 694108573 841090689 515218192 542885494 129483353 330212527 430106706 448898740 971949805 598503967 684129424 899474969 404227178 572825353 743327844 495551002 696687434 433197392 227673129 648682471 271445527 585395418 957933345 737992403 32642498 118628780 53106331 146703375 703099639 725151992 120674600 354447591 692090743 319239430 863306607 943859746 684238551 721056199 240716097 332198108 502965964 421734713 306511606 314964041 577057450 112099943 926006909 642468324 943916267 164131449 758172237 707723735 251525781 298462766 570316486 720868931 223613465 198984734 62807932 434720537 213283922 528573990 723684503 830979445 171129539 66403347 425356275 650413176 702307230 172378798 116100177 604649397 178033132 360696162 338609667 531132666 34805140 626492736 475494079 243956905 791581580 904706225 910697281 737280841 483681179 44731322 6638849 562918394 4175368 898155549 165429774 381763031 23411821 125889349 711666972 91936207 681284635 214202766 345577489 460545725 624340572 226704055 266096649 534164058 906199043 702036276 796743781 824891073 181185428 860359074 780395226 451131100 406402599 936269973 343673707 501542385 893382707 334800403 210027662 861741959 639557875 108393725 111572693 678098931 330653083 193213314 121678940 358895516 866413827 880248138 234312653 708492407 177674966 725374102 149560346 787966131 81831373 232491530 939642293 783894761 64046322 367965942 526820415 978629052 671968471 304187969 970405805 345241857 955100651 64879801 257520749 481371061 479019844 283909160 928485870 456604672 941760187 608533800 375369327 82517011 519880068 698921800 294447329 613683060 628656175 573828979 135710215 998410457 33690133 858589438 658625283 508722218 167880993 767458082 956964994 869213076 194155037 893870281 561527732 931326945 388744514 420358826 238927139 550306060 86876374 574352201 228965354 282660485 463415979 743729385 829643952 898154098 468895315 769081581 969572817 681087478 801689083 5467849 550432157 64178260 742410631 84901654 890665121 510811730 125153565 778346942 814114592 84820936 633743047 395886241 239536615 815449163 465480731 283557821 712399653 508921043 964925051 783147205 932107636 533973305 310494999 649898522 807186198 703382638 831971718 434945390 941095083 985817092 741339195 267811282 511247892 231273363 474924812 545128543 548433878 6524133 790140812 732523248 632311996 210783895 410122682 646272238 496571748 570591922 305152919 63762547 735832570 579457373 887618026 54595131 922894806 898785003 655872407 403044881 599988353 25438532 337409534 774895182 804934690 505227871 642439839 494006669 213057122 424510502 4536906 22058892 70297242 408511060 554412144 322797502 299409613 209633347 60913485 767559084 95571086 870246993 824966933 184346338 393255526 413765123 726002977 586337597 56849959 932039509 746600347 703495607 46448605 982444385 372309810 262637704 208161831 690076578 784584352 571334725 623870384 102467688 613498523 942540461 91725333 240458831 644336643 149065526 179360733 399545666 470620284 444839513 357801709 87274540 35094237 825851138 11117480 652976502 720822053 14146401 481014691 889586597 204265586 352614778 719288285 247390177 532727786 534209986 243975564 35270403 255356626 888002570 304440743 480937864 334185140 925514445 2105567 600987674 779236311 557151991 953503666 135133097 12550964 375435371 668816468 355519492 293073655 40171236 424842239 146313773 231717957 158662543 602537180 453246817 885290210 860265506 522778297 157108024 80416641 149005185 90075777 400391171 215039338 155827467 604604992 705691007 923881316 225037214 961211286 709064639 429339122 815986554 83386669 443739545 442336991 906086648 690623724 181477620 361613 651352845 734930716 628277514 384017381 997480505 189028580 886503101 797331273 515664771 47214583 882142717 101306269 197780592 756923010 635192831 604974060 700350943 7915295 956538571 638049263 309284747 171673461 838687641 372589097 673692362 183252174 636347389 704308108 354740761 795552113 219694537 200559458 706780526 536589648 635021962 113402976 469780563 392600214 393330004 17600474 962104944 804995857 17533008 90019453 866093524 913141683 861763644 594764011 839416058 746427096 178578832 375444559 83050690 729120695 286662912 120898927 894462027 908015218 655131948 860198123 268248451 665914107 804382099 967466713 426220443 186100946 410344484 39118287 273081997 516972242 137843250 428925495 440449324 328276053 850079079 920153907 227656435 315556467 243633138 798339491 128369603 126185168 942483662 668181286 106220420 236472400 844793186 529985333 979242387 317443600 973016378 803743851 618105288 174291532 184208400 504519065 65254224 233697196 826881027 249610167 465444008 760652753 491532890 817874441 561029416 874620106 892016807 193313553 929361215 100786520 684573424 52439121 917419364 11745818 661258888 36708764 366855554 997695266 751888506 499483819 739750665 480926860 6047154 670525218 919421994 313184880 613708381 731310345 803679585 506545282 57753734 775479143 723501998 358641741 74074129 33788618 290319698 942213269 472807158 315102089 579205911 128718704 761648467 455639291 983268208 151081196 939491725 898997082 292386063 764431219 613441438 570911289 26575272 271164325 577609599 526079229 248176849 977962666 510970195 133222029 910906048 488287541 368763261 875739301 654742444 488108409 787629532 659251788 320559334 380317046 543644695 683304931 212760202 362913514 77415593 96211610 86865853 394356981 670181627 214044335 48861911 930616157 138213044 431428746 835683601 301828026 156500158 867328295 215245011 301372964 624196835 230295615 622818273 980176882 414918630 560463752 159010903 597358939 346876441 14889478 404724304 111188206 709065969 225522151 857980093 374504159 510205291 754925095 229557441 425704218 394913994 990187017 435430788 225413594 274377027 272865429 769211483 45719996 355525173 959885462 757649825 804881815 255482814 354056139 779721882 852324838 341624903 714527316 793069237 877413896 146533096 343462770 541336429 478533482 81901104 222741982 246393899 802898818 638625832 458669566 357093404 718071005 675932416 102649275 476168467 668425133 270237616 413882967 726098570 10347998 372962262 544596611 725831739 526518125 165232837 345541938 180273069 691656001 931573111 290226210 487988386 962661935 276089058 340102257 200522549 179194966 807371194 302084549 701324904 483444180 609262692 380122155 699540130 930901181 761189040 40053314 39155172 733702357 886845498 254998194 792538878 32292592 466333195 159610378 850408161 856069938 861389634 677748665 183463831 148035133 360322471 562506023 794232163 866737323 241478559 112931961 996040430 974726511 179747586 89123656 428686364 110255138 80319742 835586127 153518187 43659434 177480176 731446414 651955170 840418017 213063818 778247735 315964998 349915792 645361062 548461347 542720012 614173047 598666046 488446497 188416078 999202679 562925223 993132338 681229490 319987732 448285414 332279946 765379441 854437779 415879271 269204484 598256248 566123670 631284351 825359609 240423134 820522473 451026778 389898950 143242133 306995051 788661982 387397865 126761079 257176161 878734694 716644347 690299473 957282871 83211193 748264574 154659345 417835208 796158394 700445792 366471105 732923733 382963850 137902010 151029238 272421465 420539830 215061217 728688862 81180006 293620466 908175935 762661177 764373097 617173378 950290010 251849593 689851629 789087882 600130977 165444182 700570726 546625347 752289918 536595911 202220426 311075395 957263739 894694542 998761755 679894655 989299012 85048386 805472209 615956139 370168429 132285075 519983232 872256169 330835627 373669438 695428843 777982802 763351435 463928485 424221055 646517719 111677521 2307578 469084787 565645625 77201964 210965544 580157942 887486388 591573419 564508087 543873919 205070271 967647774 449214836 622421953 670755735 162999361 816764891 136266833 85496350 930137356 448253288 985441251 75592743 625576076 111331947 789098669 866001467 151251602 882600345 624827023 386471158 771938829 824184981 143740538 282741824 331353880 630407979 957822667 412885783 252865493 771305231 965507226 505542372 428728256 743885985 296431669 706611678 215433321 170461267 178823057 883027479 154621683 325346207 845446791 152057054 1914041 423581602 622386839 32044589 499789761 107863163 10385553 254896302 64744784 420917387 209250945 554447611 924866277 753478854 120346153 367630207 163271047 318185360 196298283 998691915 23486560 729649758 954652114 279591262 132520371 357161068 706721833 813015783 751351163 631723931 42608237 162424094 940285811 373897510 294724274 539440103 838022752 725637626 583754648 548881312 903114105 971717664 25628131 50566636 599650258 406190757 112182853 152777280 562793609 143285133 175656539 567315828 507240054 129370146 528510596 787831860 380001260 831847210 736303177 830656848 857822366 544881867 36447314 203055840 118932534 346812662 526045894 392824288 724670097 831215799 384214390 300921130 60343752 10518320 572136124 274220164 416605680 507136102 48517641 10296519 400042496 104027033 649699676 253394761 560397831 139595241 588383183 3393272 887312941 773321376 679463702 923596605 526050227 245171237 52599184 176272432 756292363 898946501 745370105 529309044 432633778 892863438 631752950 158332027 395233469 809518972 141449550 114885043 241615680 383838773 635055375 12956636 780332206 406390841 421954198 901951174 473893905 10849247 808876717 94517580 992415480 994457232 383162287 607333809 42523787 41395622 664927406 596358792 708838256 93994597 330837018 959815932 654110295 571850001 987012770 173804347 806065354 41233318 924469374 370209807 889584176 792325447 119584053 2189267 506894932 138991524 313485492 809644093 310444481 523712878 28773580 987992648 456847740 187113576 26271498 780113521 668775612 40998278 69384533 328357184 98019004 766642539 705880663 691363369 945986965 342706139 449307891 280133070 254157309 197369969 577897974 878075466 145660894 96431649 95913259 327576292 827470417 161571389 387608613 969103279 730524007 125180238 958093837 778017947 103343292 433918304 416545784 692225450 934187554 311179419 551435713 378889148 242141443 714972399 614804111 697578542 207102694 156432357 666302212 845112686 108565991 629144029 808181884 302801964 869990691 876678845 576512935 254638173 242946086 568816757 861612441 371792492 163606727 730796676 142340117 554238123 417177284 695330036 533033604 928252919 585189489 827428083 571571743 448819256 660307161 358522959 331550089 222584670 463581335 899274186 178950505 561278699 880242967 389739260 507250811 172279951 269632393 253995105 824666034 455461913 113226220 465975409 16555990 117581824 605830622 500763720 544835315 814730574 922567902 129527768 630095789 228329386 104978789 994774476 320904469 396015267 772041995 83833682 767061053 251991936 258391086 464187422 333683655 885463027 8155192 692426297 766830196 837243316 886423088 125275527 120292059 953718559 143768880 236025121 84990344 928546014 623047887 502340164 769977067 16808321 108652213 149934595 255434607 547113330 748922159 807730459 247008578 936609748 198028964 531050520 232998261 553006071 756908805 876624919 554672351 870689266 769975874 54465961 405289907 2611000 903240795 889688181 300596185 10445630 428623575 174018661 400055847 840097276 795003101 111258204 556978545 599280062 540330993 494918790 106606820 137572588 585752205 598473412 608500186 738322978 836898900 521597373 539530218 97867316 874389864 592728683 418983898 427038639 706465005 20776733 643679547 649906364 856579500 853771440 711835954 778255614 91185758 87242344 656633144 556857825 733855786 858016040 887138245 698747954 376398803 986931359 424229787 223354930 685180300 615986062 813452852 310867088 841757507 614664718 638526295 774505088 826328134 89095488 149850954 709455750 468407905 477420221 489256490 961570241 338605384 3503084 290822858 629906806 508013401 998384313 923991556 15046468 113094145 947606524 444648489 390662166 267353234 573122998 593053136 873621657 8567100 347677228 305000794 32653527 607337160 911318077 39391914 862230690 376860829 229579612 424405664 543652590 171751416 801801511 596506099 155781896 274653441 170080061 182358245 22162260 377018166 114609895 918562596 149356566 504279194 16164684 173427004 641723693 454013958 164371094 799813624 740047803 204210695 876696193 97319595 300505506 639911936 774990703 390830872 616121685 594002093 855984430 593505326 108760240 986381952 227768108 386976361 537015334 769257113 670875716 305707928 506684176 635574357 340788182 783224101 276464315 617428480 917219806 586417739 630079993 387640309 345264171 622389947 393315039 174974458 691927252 402669667 494481375 1869116 603671066 633061365 453525941 985578834 894390124 247616959 470597594 30406116 441818519 304470001 364458464 245896965 166604408 576273641 857197089 468021984 819538039 897794695 525216602 397288687 966724716 191791997 15113344 325900344 450760190 645237374 228504495 1747207 709283739 335028327 70985067 674691390 170969121 841935666 765430817 751117565 928966055 306650520 329359592 473787731 995751078 269822008 388358304 839312067 306275272 253185760 115964053 758418516 493519464 729254818 397611242 883990758 676522641 117294349 34132892 684246589 601789453 614916634 871378990 647365815 878619104 474042619 921558403 124622880 446121648 99563347 577258472 934107195 803461755 527655682 798578665 994550862 781900935 73347616 474152917 128937395 874681265 207043790 852805663 56742263 308000781 854871735 356909207 776438746 243869105 148213498 516817595 498643833 317745113 522674519 754185383 93535306 770922478 624369888 112419678 629944951 80729727 445612326 892759318 540469931 453937544 140912691 155126620 948382088 589256014 125539505 729007048 4996419 57138670 297472552 953047006 895277613 701069918 29771825 134080141 370616596 355492375 994750978 139359965 938726893 8416627 892303931 279722612 699093922 824261971 922612503 861172854 226834282 327768273 424115024 408165181 793832543 183131058 48594223 24129674 567076645 946327594 93234929 472788242 718333894 888625860 375853023 137797735 165034831 49708121 486039721 755021000 821539052 889822708 163892716 28967232 324408200 266935980 725631992 816573927 16341498 424357762 397784079 418751754 945469101 204845141 835146508 672483273 759892511 29932509 287842273 520182017 648827795 646083485 768020150 569927025 180716807 712534260 996958647 679829525 571665092 783729530 537595523 955725204 672899558 158694382 50079137 149239161 498254714 612948184 174665462 387188900 98058179 242500366 606727572 94802129 878565716 586771927 145025224 744367142 295198156 788409568 557511842 976076440 539580569 383598415 103495292 19662408 705790463 43866597 409545388 996621711 316897420 409155888 112307113 469895527 414077482 292063629 337336788 486236641 684131077 940712710 894178110 436160079 432228691 378802066 937715980 433954787 582553019 847782264 260177942 555773738 167787432 369935503 936300834 810159752 304160564 133566826 749868327 798583091 448345140 511558857 895801095 17714885 85471383 332482781 827870327 587795098 494107752 55677073 958035680 238659370 372921830 737424415 494216915 528352025 850083665 443892844 586349377 38827842 873542679 761960615 866504170 487706814 124427098 161359125 610022002 733044300 735446801 670010561 253118220 235312882 808574575 192359743 793266339 488454805 664713504 493205602 9281130 233471237 546674902 143407160 491656865 689119017 149223845 208890337 276679773 684640349 364741025 424216915 131479976 414354518 476071366 162464498 180204427 199379526 232980136 613030491 317109238 213098970 471149711 333699894 768272746 457326848 79488101 775171470 678135155 196881657 913366390 267183357 825159701 413835501 884242177 893186127 397290850 608816929 221927545 634530520 939587608 894362645 150042162 225969670 931076208 230622000 259818784 403930225 372924459 912790461 252092666 288606412 242253347 521716008 24088245 739262868 138675185 376260595 108826376 804457929 957235144 153230156 944930130 576449453 398406638 577414147 909999031 449785272 160214810 710429560 506124271 783957245 656307403 798634096 146768680 768510184 81508541 133305941 127788453 364658800 394813210 937502201 58523201 305500232 388347897 12249912 458101684 147020033 671816087 616101877 351402088 42699759 933265702 968018239 164077593 358460104 954226104 515063406 663628752 803892508 957009891 514746957 762960736 77412698 476797986 378269166 716756079 679290192 352604645 767627917 572543356 828857881 670862769 99487061 879773049 112926287 801387628 933674148 166875029 773583853 884117509 56538870 290674337 136654256 563205918 143135674 418661602 369817326 674463309 43901244 759598701 777054938 768404911 872389669 137032892 497851608 183631593 93237464 719658474 253708301 873374808 185791278 88909449 293745227 61993934 801327833 559268574 623669969 366810813 935381581 694534388 990630629 317074217 676368989 604390128 469739209 654728099 258505311 59560025 631211131 125292941 746268718 537996017 494807050 913296583 928403971 92464304 181485675 51167064 167562879 47720135 334818366 96165087 8734159 366396800 833850613 954818273 521680941 307471397 309024921 665017027 660814527 544269794 38358892 359752573 601178374 462487327 175598784 547845184 811407239 685045101 247847097 11958766 316006883 274058125 724125133 18947494 73751047 111156041 25794643 953947266 258221401 48993142 138015091 520040027 967134303 307911740 331475897 800324658 188586967 382762306 290696487 916809486 449794672 555425766 442037632 477414597 387604607 102041001 233599996 610216713 810072735 169603119 826705211 791043505 406678525 568300860 492294043 877538766 968410753 515845474 248556922 211369946 666120260 817035918 744030391 455390971 101388246 231276386 418749084 835928059 639393439 989290685 760927914 548207544 792883862 362390135 594764070 987441735 37366930 126838845 67189052 552913496 687196860 572578161 331037551 58363925 906685460 373382313 31845771 577138698 626222406 198892054 772682791 492346023 840807779 72131157 691651207 894992823 236808041 704954330 589127717 412922309 603655950 350710202 373613697 484953238 454913830 767997444 962086342 348329754 391116673 20000508 50091088 333258181 230867318 355091695 498972844 371242778 561781122 728317680 317962861 353205104 805497000 919235069 23734430 156845470 457621470 166953455 918050157 999915432 13842352 768310577 179091648 961533924 922778142 284909001 441959075 107400632 631265402 887473996 185863650 806780169 98132711 794240433 831147513 746082275 4080909 170127699 85130511 873453973 772730650 311248708 732283760 456274262 278123653 272978738 31660657 527803552 488772611 646448392 22352225 235044910 484344732 570167288 569087552 521738938 113575260 538774105 366222034 402807848 130651885 698212863 662274793 624116254 922609057 873009739 718786438 750430384 62735535 926023646 880290510 881048629 989321750 847322316 161754083 328106333 204209609 688218490 986990165 525549146 138879190 483570889 450583946 434135848 867630507 589819343 349537527 830172505 239089970 859150392 894489086 211526928 715007570 905602330 850992525 336114457 86104926 892032365 531050896 728935363 86341766 639775765 601004663 491529717 844491452 481045201 903417962 213058196 791190331 987483601 512268858 117527664 545424636 924539180 980602722 223756146 684344206 767901614 553894058 521727278 166548040 112582905 861447256 192745039 591439079 824387666 329168399 386550271 823391150 884282204 891072361 848862254 589612640 786506609 601196631 178030564 772219341 274871023 595478901 845877014 684139151 595982770 17224581 808661904 747194408 827065652 853340635 525650623 679766877 920311733 233807259 574024645 614316469 188928424 502420399 590291609 193970058 13047063 913315494 74823322 495833453 445132864 279944742 110547368 325275621 751270359 529234302 452109211 891095448 18371316 360077259 122847687 185112111 435928438 543819250 83208333 16978499 707818491 368291866 29311748 120590227 192833189 955240547 105837758 739534188 96362293 950594304 514428912 866044779 315408876 659594322 718013615 57415796 985471876 411259584 69300479 810958718 732504272 234729076 802820628 118575025 581006801 150670598 182134182 559054651 374774749 435755597 148451458 155886564 96835526 479280898 172492377 349199980 18263966 815553790 874470458 511890710 727559458 329536907 458076011 125567804 159732857 306204562 719281991 218500713 334332503 44466064 682866524 501832371 879434806 623674698 624439348 615544524 7669653 141905284 539294939 486210725 530419295 92011725 498009779 528849136 901434739 209447958 424594428 470766661 740336972 152125670 931102988 319236665 490370568 298470617 442615682 416358461 908196386 126451065 116606590 587221722 269578310 953941773 658280271 898794522 835509825 146712849 463825431 84892143 926722865 947917375 687151350 331795372 880611134 514685008 910868060 440971429 274484676 983562102 140608368 433146584 423347826 795305357 853438111 170503523 184121727 405936104 364938167 549017848 708816586 143192622 354725035 396801030 914081977 391149241 430740620 178850000 454212234 955290222 478304183 848152974 87859222 538042560 426015516 671184058 977829989 554904964 873196234 577867193 774288553 127636393 425951655 156933895 790108388 785559527 598922683 877597563 114800997 884702417 502859965 15093825 136900909 695305865 449696935 856722191 276348818 278899135 970920023 537506101 148398683 968076703 483051895 487683638 26617287 348514385 797828132 506515295 351996808 882755514 348488125 869878445 573568076 511225233 309265671 493489616 502343638 746273678 427230429 74780084 937352104 257744512 858018182 751678455 109750871 486605711 946151580 711060975 455631928 694780588 796773720 879973971 313667036 764624256 338534760 297040841 80689591 945265355 315425042 730797109 643160023 884469387 186570700 731707354 799025674 285887509 799744001 714341251 775714255 560375522 628855577 381785932 791091311 51318110 278675117 964002491 193694536 204353859 828077248 300175734 214388719 844590174 388596467 801801836 484634437 19112065 496258882 422300746 46739385 648188798 219187900 972973916 643982240 512825103 56870253 421395761 379429713 325470737 954309475 130712500 363330260 155640194 619249287 366281753 307155422 188902060 750252499 563058220 154642895 338842249 931619291 20135561 27736026 158620133 486914774 866007789 782525397 511008696 790383642 358773007 769895748 132826353 903450703 417971365 197635906 959452726 907556438 790089495 547661328 535543695 113299100 621240795 887735520 573024861 378773970 603397020 830595471 155747096 655431476 710665180 610188455 825581072 778544460 201511851 799710400 657978943 146928280 73543780 241813460 431381784 896216434 502070693 712096750 13573758 307048271 671139863 790494073 480217287 780261173 178816116 706696889 332411463 325854632 890186121 457153783 586408340 248121709 437703039 520397041 75984058 326297115 417424137 119559986 785125289 440485334 892200406 531358131 287910262 699305801 385132165 700221177 627449129 499365369 37609775 363598288 800762347 446806283 2551931 772695101 258607163 867081418 9367083 369402807 100918634 915667945 795901258 45360423 533546638 457028798 69781398 776371437 183790019 686414579 339762375 967070416 571104906 713402881 862487212 659164927 92041730 932346639 532818593 344360474 438440435 67684974 771626820 717789295 890990942 209655047 243256986 451039097 790669619 571149955 638910367 823941508 207693375 605800113 45183780 126608605 554967158 8369924 498704625 956027183 111791333 82574238 918488308 699153683 7146302 735584246 963273207 719053518 311474593 687935011 799364141 563896242 59265904 144295636 424991571 262797372 23817770 991862978 524756326 788146667 836250051 229352925 80894020 860191406 462010836 635720290 146183572 220049671 99158515 53038872 989793546 474995029 517636479 147224963 569407426 708817000 265636925 73776824 187687465 792623027 985695626 913101000 588741218 474466804 106126824 671054048 860951623 899157857 437687598 925623543 518659403 92786782 109920829 54449177 629231751 263618869 269506248 757577453 188981096 279525693 510181674 591915791 97070338 332847459 345421371 401295681 525251354 212136884 163531555 760900033 394145114 680867658 648625418 656481969 893106930 185753947 524923956 981782814 484658992 65910971 917290794 573340365 533367737 29313133 405552751 328463073 527184264 430719472 200474094 85360608 368451925 572078190 626425879 520730365 477634079 600724989 155432189 870589905 494537831 578831873 53935420 314689291 56897906 110188042 85864748 68728087 791112791 32025144 497616706 842342394 80171340 637159821 501066613 309577691 906388964 489425126 321608361 755399865 999320024 300913399 867213065 439975741 607371422 36167047 765286668 789801322 757919148 389563542 737785639 879315389 990704866 278487354 941868852 273161876 301867564 250948900 55002113 254359418 412735226 43754730 320582347 633638754 480444047 88079445 116939679 304969057 394737714 603362509 141676464 923039476 665979694 403540535 874642627 232012208 702718979 37718054 201007527 91510063 77059520 840539624 671775727 910355337 674164049 429864825 435991426 29669227 78715767 917782538 86058462 914493026 865436491 67568939 311302884 452624867 678617720 676618438 328486080 683093163 127849978 208775480 468419633 399021890 481675126 266216820 729208244 836430578 496370880 313479082 87997458 483703782 720692379 286004590 166656582 848834350 634617452 420201157 131867394 800891550 328038838 461667883 429703443 520217250 574442765 747192794 250408123 678945921 226406451 183288290 36280820 64544478 938612836 243063235 32144636 510366337 354649963 839875906 832607248 605411266 780592574 265444387 350284027 46771185 985044610 697005076 171142587 935764630 338771602 333726189 357867583 312933694 216551127 847172791 897785805 647248979 709615459 324981229 165149027 93901468 903469767 164953907 409957182 28571182 622425286 363802352 101659791 743219176 668481414 941973962 891015078 981663940 687952164 605554114 604437491 332810087 570307894 283260916 118805381 283312252 461979351 28955801 724264106 107002161 385662205 865394771 427105782 507256330 121793313 227606976 504583163 260702370 720659227 103158259 953962290 73401711 855738156 963470782 313547809 555990158 959574831 803305665 971077066 502709249 45288751 227750493 306511425 768408290 324850051 623955849 202384637 474157097 990653663 187009409 837782172 363450151 507042128 4395051 228871019 422311941 926291059 452130418 257639150 239399341 311921291 419595482 545471534 715946638 430109167 311062639 884382689 141909009 392912051 915053702 414312054 453779742 152235449 741212690 678619040 53082214 280962209 56050750 764852019 423488935 932386223 332363206 729904513 648285871 904474690 860597857 399180182 209024088 528340795 756739548 659270887 799775665 888946642 416106130 693823624 934189874 421028934 627833783 798494766 783541860 688598841 883915960 586626717 899468027 103264723 27440474 909696150 843430739 102731574 551809610 289266750 296181166 492802549 724980390 383462668 140833566 309449151 389832965 920501086 774703127 893278527 786498088 6582173 634876747 321016831 790438181 172713786 862104109 955315796 954666863 41189778 738386564 48676415 511640269 362068260 370561846 706781291 172171485 181485675 863321277 703606076 957487084 308831839 708623081 831708819 94437096 521402448 689800922 483093330 962073863 893207870 864025252 977804138 439486405 799216403 543675877 455146806 439862653 46652916 203473687 20683632 603676224 825162765 41572145 359341059 126134692 354636703 679925620 706045879 55874083 759939747 472827351 138088024 334299771 376030152 628288128 397934445 168106888 97421899 297407110 870918511 803939248 936641226 590980852 190695490 410464788 65161739 744314125 437899409 61378126 992288216 11472780 160145200 553818363 996536340 938025066 834497905 641634488 659977972 628676992 303214781 446639200 97199321 731399040 95252730 999930920 105174958 973398363 239610107 402796945 912113790 380238444 245764169 78702734 868879684 683975717 46150396 373831859 708993462 332125002 525600759 827621093 559564136 607606683 379792649 715143894 773806378 810381780 167629271 856265327 936014410 55521180 787754438 245232161 734850568 432974326 861756056 311364883 325663349 758571161 245662737 785746062 571410536 207078139 231754058 175045346 344239750 913030561 945483876 559724874 646012101 757663553 221543722 333422186 892480805 760451657 202270895 582743117 202342077 465297983 113302389 316738621 26051526 663944010 410640009 754411062 269940954 411037207 343050513 734614555 661291488 297000403 249344913 684820092 627321458 372021655 617230721 435951896 424478321 412290384 366448819 603138624 95855749 560689710 893349199 527379317 49756732 929761021 434161037 589359241 209476646 282089389 730568945 33211196 377255013 368957966 877309802 691473643 355918154 782460193 543086941 404344431 620550097 21513116 197663983 891401546 945184797 234670690 796398005 67289117 821638967 351507512 825724797 448156940 52365127 657775243 808422618 770708934 139276641 200344930 663235813 798209594 164163260 460337763 842315238 209538649 773296249 826732671 54773039 787549970 53608172 380184676 131841819 31820953 22419632 398846213 600685336 352662603 19182297 287017907 669534570 781473697 907086172 588535661 398822859 583283440 409071448 221606736 220971243 399728176 731568200 393760730 930782743 146991203 922945480 756457983 817382750 256653984 955193201 822974232 63051509 347777329 154800269 902858270 847639722 71986295 584857283 752339895 795412616 859506603 180614732 203944389 845567680 933663284 167540078 258348663 866350541 585602501 579826708 24733897 96930402 944958613 498579980 489868013 434666448 69769537 387852524 546312582 774994482 626991458 13521263 830187631 196007142 880884416 14401434 288520111 478948924 636927126 247623524 222378894 750437579 234433536 895293445 951985586 654205512 531187441 68670478 224666511 411893447 805133200 814959547 106615823 724405305 777008098 831637463 743978818 551238138 306432905 763571970 708480741 831231796 916130082 317091110 197903192 612329096 689089412 151571279 431843089 245389969 905132081 839237463 116310661 216699722 193333032 296235960 617389826 921743704 69408601 646545022 30352888 544947605 144858412 952125140 979951825 589141976 883470001 243752588 487916725 352336091 333834187 830037846 120181060 666740366 770052934 222082338 767903127 261734775 856083400 750414464 431973672 48367299 799943321 376233304 691405414 720103066 13483242 333272738 256843594 804437205 173516754 468185524 768829284 477037237 904168126 420582289 864005691 479976370 716270121 481568694 6051733 77630641 982445480 140408377 743951958 292359483 862751401 164648936 976759064 613326351 335881689 572796687 188435073 698589464 105851932 838498445 132779953 201517134 563110213 195270292 30740462 987932662 705335252 813694336 624327874 485516633 477782756 84194190 507842604 500209449 420933217 146489067 107488641 717665549 752621121 947847504 619517129 923647563 947204068 985895860 459621893 762686139 348662264 431857165 994343330 650330207 818289280 209189126 940272598 265730301 9451724 203488571 416145938 657547700 270279215 881198689 203036314 317269227 375658553 258900636 351763787 450422387 346242805 830183725 743563506 201757903 379595482 903697199 447520761 127067645 42453586 837797805 453653172 561895813 309088778 686394049 338831254 849186497 650546349 148367531 875317595 494018807 157687548 855156729 332227256 327058309 575443826 807560133 922226467 29755428 799807040 373706514 884530688 504553042 820284005 191005232 349462654 299887943 724362343 908226463 80665562 183093333 948121713 661141236 987051835 550218263 878303174 327561354 370850777 837355379 160582640 492375491 793098095 151197098 228847229 657498128 612874477 203942313 681308152 711027359 743619834 10639777 147115581 334287777 634998117 24358553 786919902 108555984 330495647 985945917 68069011 402024179 468639658 603661290 762422565 889891384 222049165 341851704 895559903 75900627 165022781 546821372 397081106 180220924 703510942 604353542 65629594 657236436 604631500 851062835 746176567 989818510 374078551 978574197 262211582 602320854 334426010 957910289 897933902 690135846 303189117 371550260 613736991 400686227 670588249 543430507 900953959 780480433 267776516 526348278 905315206 91288369 516240748 489935115 753253631 468487258 464567690 329835521 305153040 547523942 285797507 454890543 980137649 812161382 938104097 423911870 140668834 951497518 746728826 758044030 198620100 729124259 976738166 339756682 245568293 279974916 380654075 831860039 743169778 886465828 488358708 380580186 341144027 533971187 457309635 383889632 591495850 40024935 351645762 827413904 409942318 634906309 158576639 706618522 19081611 444603615 919208095 710649292 342911158 951989749 820024685 759663283 80317520 12341432 532239296 612852115 38964160 83164694 154764875 816475336 455542386 986478380 506910727 320891433 51228105 931008941 330492838 919241480 652287398 771730529 530688886 471055048 418005209 624398011 23675129 332825047 265460018 567125160 698984639 104248672 27496479 928739831 870553538 983498638 741495884 466608534 600545160 879651370 47879763 307212614 665619198 290005826 713797911 82657062 332423113 324875157 918899286 8888865 564779216 581935988 855927072 39091479 669362199 804491485 69834078 803539182 397584803 718249573 978888066 828889064 447151621 838605947 507135125 396304233 714775777 451668772 712172971 946830999 897340353 21070624 628577154 32259776 369737201 948850596 834282876 114115052 344395642 344926832 162281795 709207854 32074840 113332462 157342586 426275099 623567277 367078941 446374533 134969303 558451071 291085444 405765647 429946144 147019512 179070588 976867277 753276603 758336711 732564728 770407233 529316259 560085896 761703332 748951337 802816644 734192175 738694128 405056260 168376151 50449804 382358971 422218272 617363100 947281028 267795338 88412724 981112634 146320840 621957531 606405329 983408537 682048908 674014411 408511326 157778531 849736797 914814138 717652293 28722255 28485867 459085105 63088995 301209860 776854908 823629242 59519099 86091499 114716896 727785875 9745960 244431652 709297352 228698201 996769665 128811570 752380062 301433222 453719811 732376481 859696003 728746715 121630712 847856345 919027253 258135134 9731684 824581727 283432048 229464189 426314260 673407114 977525048 393697413 531913058 770113828 237135801 466501873 351975759 550158367 767845572 173252365 951502766 604839839 151503124 773378370 258653514 422896172 492969786 298202151 410589230 604768198 481412564 408599833 587280659 241755312 549482581 74582005 856303269 903626293 695114937 305867621 229608576 636357282 743605682 543486993 389238640 371903613 458979470 973294254 493588223 979340285 242055716 438792931 108642329 266974505 435883001 447873569 307444831 140786593 783637238 364430574 731390743 522533376 207009580 202433413 417402598 395769382 840605240 60367789 722160593 477700845 515230759 424226293 970177840 856124007 21435534 225992423 845741104 222039947 627150142 189892645 42312833 463524055 304601507 834607931 983883700 3016563 56568229 450629709 12073832 196984721 122647520 632942831 974558477 553920440 70846980 85454802 675334840 148248929 977702401 867838221 740787799 263919159 788802183 473258137 44776833 568190010 984801012 111272308 109838243 702823082 731514310 778279343 788878433 398422654 718367972 76421925 388574493 463435300 603856272 506517934 263205923 415078835 796817827 591032073 782279002 780859644 393613200 638491784 47143177 685650509 820425470 876146628 360905396 84398340 646119997 960481489 821000044 574212431 593501740 71790940 542940718 214181306 414073574 868846704 18042697 833081457 427717031 621904129 924065756 897983370 783677918 761463284 98799522 352310000 335648969 968409257 216127786 555492222 701216245 62085477 91923176 35405980 968566206 69478803 207564674 602825355 45628749 60154556 132634741 219593367 129152549 74126628 191469048 699041844 914662838 347042245 410286719 600688129 500189233 887922210 305561319 273897962 114347272 666293739 297843552 832139876 485580522 818108978 269230495 71530003 820141022 585531726 565149880 400287379 428011634 794822965 315188075 795388531 149216552 199142831 650429045 183294413 890159183 158634285 414220353 402130495 690469624 825183894 937940127 987643553 45438439 832953164 429203293 798078763 202712901 294280690 788215089 564715280 205990011 944271861 323370540 468213445 89336564 960298959 351567209 39655031 329080422 820153586 919703559 133667227 394868828 279713932 746874445 311982310 123551624 730404580 961152838 912093648 864460812 432631389 245006180 196165116 468206634 17481635 644344528 248255617 557608510 426967129 80760207 816788067 376899024 528036660 268209783 725549753 290792948 275843726 86418470 979599113 228439860 315401325 18160256 678267439 550572765 689017 363664215 850809725 200285922 334209258 418778727 289161201 667470802 816947651 118780070 178927193 557893604 807407288 112266133 808410065 700092537 322862139 687480343 172180586 656304889 547355880 251117383 813732313 64529427 471599237 837430346 575997064 281382530 476653596 688341571 145695798 558054420 203905610 474732954 3844724 113324355 664990060 33331449 99094072 232528522 984420170 647630240 933045896 606931639 223798535 100861359 377409297 883735410 660257913 323756460 407870992 977890348 13135033 447187416 986760589 939851409 697406221 585207574 911931815 522404573 447591914 350786743 666747643 80534149 467004365 695324695 602037798 178738963 959913776 488908009 291289117 435424079 231291558 687334540 294593167 607353267 257763998 446866370 744346633 298359098 580243940 518829142 469839217 104927908 708202422 730938025 754976079 309961741 645229492 770524737 864750800 589290225 428659846 473788636 491836416 716083259 584623930 322664642 235003763 505191523 68466311 451389191 955849014 330045752 399440531 121105983 77221389 878452792 912389739 735265191 436833029 221526853 953484350 296168185 663138789 18837795 286857435 995258392 926426690 76322809 260466388 599160690 494596377 501230775 287250765 591976739 237094509 724187170 410086706 19849428 70754965 311164911 133343136 65377380 882440657 64673400 605253730 745826861 999518390 323502747 261792185 828228603 976654817 831133863 214402218 863088604 927739645 482923248 863442237 652657931 790323403 380081797 337945609 884760828 692764156 420945121 678329646 950128780 339892054 816684833 869678976 464507243 835537596 389524517 313559149 778100671 906381549 344993158 798205869 221615750 454801317 40783838 17295754 126253380 612454394 683505664 132750053 485283924 963254459 531148911 316694653 82619174 85127229 637671733 439261172 794688709 473412213 924727097 631400692 704326551 398486517 570190908 216963241 67057626 823380160 404093976 120372335 873662077 886089259 647745425 695206167 506439653 245861210 397233991 319940926 582700165 699988535 592544907 757540606 125831792 568116755 273487128 639337248 636744429 451724581 130659765 613421716 947901194 713540807 621364439 86915521 958036879 714220020 617697700 431838874 277595100 494492 659810252 680283263 134521322 760305283 967560072 921473704 411343433 820943090 90258756 756190186 103809962 17677098 271227391 268637920 471370562 936441015 868997801 642167195 140421186 196489677 676238627 407508688 815517537 895589247 785405367 739499086 916807797 853766921 153972587 127897881 411365590 515199706 272691333 674959679 272434714 156387497 384217958 610636415 801902111 160153688 148070379 797657542 406400332 478350705 318652754 668301524 192198357 601912886 92301152 660202437 906334637 952438775 995982226 636574474 526367056 191938640 843138452 759970645 305680992 403390939 588063148 393919424 247976251 38591125 440191967 372635454 295651617 88328227 388853576 185538741 223712703 538909637 445598796 595788094 820999419 581761156 294785498 210721132 36790009 516622995 136811802 452903501 189496834 671984957 8590358 956355700 728121571 163502941 668492154 349985470 140882156 904644142 323752351 27835235 749022314 828017038 771619882 606618262 535144626 122980782 611536259 686068808 647020979 537446218 870243353 898368510 469449698 298356940 739305535 931822656 162988022 903385974 444675217 832689807 573948125 468740807 929983592 567080112 683518549 542346185 690840736 700704231 528550435 151280134 138792259 256098535 458387925 220097020 801340889 279001309 534553506 902224158 576401948 570718512 607057138 298533810 910633548 274153808 502555765 294086464 703561243 154801215 823796981 682027938 586016257 740891121 245989969 679030898 856838956 963452965 931403817 910048520 549174268 550970892 928932085 82744781 310817776 324401393 157432265 326337902 308884855 738762435 357972033 221175500 157748122 140023866 473431496 209101022 605131537 831584410 736878603 904840493 74397333 995870248 330889038 832502554 605331967 916064310 50332235 340930914 512346886 409661416 579782683 927227118 609332877 472569155 984067602 381298771 931350549 313829165 764155007 644926120 424584799 697634888 282261363 288536804 609882214 25279514 723633466 19353509 715231575 480028503 265036181 793899423 608609371 678943127 111931941 938105910 503596224 765686350 26915057 558005019 651863210 991073954 209018311 75135454 959717868 791117611 542808670 188413286 170312957 58381297 55958521 206457256 697772380 232557196 799974303 228563159 912869774 881470470 315465216 608386523 286235356 585885474 322044137 951167508 520063726 747676974 699388043 319842294 63889878 782792911 589810206 483748852 612016264 850953382 198023856 133568908 678920988 397278015 461883999 891546306 994449605 186942489 820410616 401150674 724063087 623628869 614155969 654913527 938748175 116100457 99539800 277854668 209532018 843590467 993148685 301973668 897356402 259537534 53200781 438737027 136933433 27016136 629139611 804776496 442895788 139581215 927047071 349259119 552662748 663211176 848906699 59330147 285674978 475761667 294827128 566505135 408391848 464610958 510253633 787348516 865477015 486590567 502043177 844174882 902740680 820583982 71047569 118632492 410049286 298886554 612414410 82026465 843864557 327558730 819633490 513353955 171694892 922653611 560295738 927396487 227273465 475844700 751292372 545586257 986961937 73222721 767342523 900197863 279555361 630482846 896869192 376454626 952330901 126477492 568793152 283680297 733465875 971032034 16473362 487150753 521367427 791461466 279776025 653080820 245347095 786758340 214479774 119555298 412783491 401967749 724167657 400001256 612594668 758009345 235022619 204602515 507351422 646367494 342667201 175933292 496668379 810859289 80189813 105991088 794325931 982911333 526890045 51857460 294532042 565791101 762100613 277866989 130399149 437838284 131139489 121816201 861894409 789820251 941510263 827676365 101320718 34407957 590664462 27428577 777463667 111678284 579299176 5554972 597995709 407159221 568958092 609507764 474464875 187279297 345693527 466874126 228637550 56551499 462303601 957827260 525757716 611487763 839497788 367402066 180930536 25418093 787612479 239414900 401211209 442883092 252928269 171159020 158678416 241284351 514050834 480347403 729628477 660925021 244169534 257940101 15141237 440819840 199432774 376169109 392928 659984117 810254407 557078101 702387965 137765917 718717448 408222555 19115043 384722345 814316796 957254297 256297663 441747652 909129069 896439077 799870274 722020055 443428189 524654479 577140059 204236292 693249142 952294921 835712596 788282670 889041098 17313198 803991760 812014951 551110603 346990012 442826699 498229762 53671153 678292964 396950586 887499383 865920050 865630340 664757197 322401249 736502559 584442880 935862600 405184327 746874182 675723336 311740932 455054684 315233602 573063249 819217691 303942360 918909127 999761568 828271238 709201800 164050054 260012991 215940601 194691608 438444557 685452519 871908290 429503764 220158659 514111601 603785301 159879952 677511723 520321101 913716391 877861690 779935666 990033551 684176558 980196383 215876334 676304189 906315843 21617742 398525103 589200216 80699239 867601266 526309136 183475340 920134605 354058614 729342669 59350225 974995838 778328306 236374073 771343927 715604302 966899356 842522485 328265398 534451462 119257400 808007502 567721095 145067567 479906293 186885046 273080837 571810731 378935893 526455025 102567094 309217335 882229491 803885269 724599543 289056033 966906107 585105844 514724360 394352384 938131840 318285514 123838390 854206316 34376291 414128119 681508836 549065035 561886903 358224255 336237223 224787796 812811381 36545089 733147087 281683602 521998202 251356744 96190929 569780798 881524843 611013062 769090198 59191205 544199353 710793465 648133931 545519177 46551517 492861989 696646241 827628616 91097621 435178537 378107091 197172534 569897221 164509408 725185636 752900876 677536730 791073658 176748868 443049521 732362484 44838183 558760908 693945 813046173 685140928 398587457 92366723 732887339 255629955 765981174 617222461 485496252 354680373 437778608 993362845 610333807 509442770 956115745 405840840 537220201 17159550 166015591 137437074 988919921 393692074 459069995 311316966 668708307 696608181 132502806 95648319 811939912 783806284 561074409 850297114 962576485 911967006 508917449 715059069 705328768 631271216 549799513 906351657 530605637 847695920 489292254 790096044 289079103 379173088 219845528 404566980 592584228 454585525 616344468 755124667 981678177 494675086 930490885 236228388 559993637 873476989 149538929 652614962 225918756 320318227 180162655 632014393 751406485 17716760 744949527 361143071 930590397 356411834 837482840 268159291 458006342 658603594 341301425 76664199 162091659 169634076 167173361 751293034 213689205 83382588 576023672 729729522 700701699 785851658 894456647 569224323 247952096 933813041 403655201 441698339 306478456 824922764 563926262 561024620 847099906 84874173 655963611 203121130 247361708 81328635 138886515 46645937 562552300 751708919 456490277 473865970 883619863 719824247 665117608 33866596 449154105 108323551 475345043 410671272 634780718 467413423 34654233 338219035 315588315 24909861 127080138 101467853 368843781 701841283 456877965 37830218 316736267 799107390 933556696 697592459 965750340 235608630 432765447 470715987 32121604 327115015 567978095 27524680 29280922 838829352 879573085 506221186 998249833 251786873 815361295 992857204 383435312 850532892 535938664 7609621 909854302 947293752 481090381 962993344 799837923 531611524 415598701 223539764 283218799 857656238 530142924 312958286 682353223 571109143 694682357 564417970 77239676 345306794 716928521 769037303 357987009 382614861 783758811 754090624 728072728 748073192 210698550 126479028 734904868 576594432 769298418 637557726 385133088 813255234 869606632 389777088 203157745 15698583 305937318 416311988 449682133 211763061 87335393 738008045 189120588 13956382 970877881 198012251 340309147 686433513 797315754 105623380 186691401 238084750 953669995 553730392 837234573 548816534 473415620 157500903 96333205 417172020 627843602 356462618 375128290 639744665 432443493 66572672 423389259 572785944 289796277 238436854 225512682 464529530 473183560 717652545 989421570 404175935 262343989 259780538 630661394 607026305 787254338 511245766 709463699 114170915 709449911 167813325 817932768 14589809 141660306 641327179 791905562 62251851 199827818 549516494 114876458 616711710 76997626 810140401 84764551 664844909 19900762 102414550 906961393 193163123 530719436 139482249 351632662 119318510 100494766 813493769 817821260 13360895 524969238 311585602 350567466 130662461 468243825 990096651 708279911 709266531 703211706 124822000 19054196 495106198 376476229 762369235 453633759 518226363 358553279 237364457 551450875 167373630 95887027 432241650 902004740 82461559 733402132 376640454 96412077 229761150 683969740 294593566 697523293 966777713 517200416 796106854 71419950 489408032 794015121 585139262 177626349 5128540 86709855 279045410 792020089 473588318 855722405 881108734 378577308 463829974 676570543 990555034 932042294 564507366 756944756 755499543 961838301 554788192 791138030 830998356 493483370 323014194 272514514 906236911 435535437 246870405 327075729 450395753 525287839 275776190 885805145 910461830 414157163 48344799 601184697 101821154 66404235 395366197 567336133 297779949 357375444 459646953 820000726 686040404 465642604 4394298 597897293 700079907 900168098 325895784 984097007 448631288 882910149 940282078 149139311 697293569 207907562 890821649 864079712 845101514 851547790 871558089 631134506 25678676 93383497 427434822 512179092 892476132 534812690 850593178 40581883 22610167 993495193 616245390 261987766 982721010 47075548 473546391 520147183 297518282 299244470 974583832 49100972 373186378 493799996 706942095 893043097 9543084 109421880 430400416 992712207 960555897 981682123 308381155 363896948 975688654 211358169 401704049 581266553 806927095 798974783 495301242 174039042 40533782 944119912 233449131 505148860 725862897 257180151 716311810 86842958 549880507 84966981 698455181 246601197 165812230 810296206 418360582 852361473 392520826 543171920 673917057 662868373 599025001 571664670 360457962 187848240 102316919 845786170 49882398 717622111 196443170 91272576 233553923 295162468 357647991 367442052 430068069 761668027 34437107 48754067 598606714 388119211 959222900 26035362 897940769 927109480 803335447 721041590 209251631 878614328 271787291 806900215 616295951 308282903 529661403 907662943 580810273 33144398 877886114 74249593 524357397 699220549 817180707 913989344 806449304 26244134 69005291 961879960 107132650 841239820 879474277 581873393 366206877 20247903 160609017 219329194 711581858 915378638 645754550 911039125 588872684 464838754 260453493 609283722 975184679 444296632 990210802 446651896 775192841 168457146 604398059 891023193 950234002 836291873 122601594 428851209 916383207 568246578 443674885 640447898 366012021 422642644 798005722 49035306 536396220 958874516 771305038 607545629 301541712 110507104 987912414 277703303 244472000 86647010 861962511 46697431 578351670 717722966 369748404 78049231 761871409 83942111 559029742 310042165 244989671 320929840 431780834 997449894 914106189 165575378 664265040 664164269 434705895 597906645 612755153 785861557 650589932 885791314 339110706 261762544 551699640 686282525 813115450 367128225 866281954 227600998 695276550 646544669 525155704 455480223 511934332 550502595 42416757 501746900 391075773 170665864 617997954 274181166 450759433 802581913 770044607 705948676 493618875 282909875 760291072 34507433 470000484 793283061 447851387 853525039 613291405 114520728 146106471 814233239 930861367 835649637 252392421 507173277 939399785 381370825 592660645 734944291 689040067 772894544 770327644 666567418 737616862 726564186 337846738 501758995 85341016 830198787 962535044 986238899 718583888 213830196 650289326 243885201 805240477 542270778 140190687 393761000 219420283 938735294 689874665 92110505 87499513 469612311 956427197 200315483 465271345 635465400 580614168 608758818 370257671 294763116 651661222 555359616 46811146 281450005 949023149 172236349 249829961 956691987 745865753 572759342 771555211 802002449 35786156 850041640 776877954 453339362 266731916 687650085 121842197 296332037 315138049 696595092 891650817 306679420 517597266 909131427 968667818 54978372 956305092 844331943 270612302 775437314 404192628 575420836 944163389 258552003 474679293 649555884 178981542 29653936 319537413 753930023 573579804 691665187 206351967 677853530 817113569 417623053 403891701 114929722 766113708 39060797 444389403 340226685 408997102 247086331 777731915 451214729 372563466 766092099 421802080 208098780 230763948 959273712 507879946 227946356 312107755 414109805 382249514 940736076 836004262 886076661 403990719 680077567 944689879 575263655 249867940 223811419 993450658 211389007 984805370 118789828 119604306 818219690 813891607 387079527 191629453 501358358 977442915 132558382 919777662 844371169 672634425 744195240 876331854 735273013 486696060 756876616 516355564 463133088 550369221 457213885 486926313 890533103 316221027 785241574 771530192 745997856 598981725 41437787 129686903 20083550 506697408 401659458 499080257 309428552 452823828 15664827 31660287 990547824 294744760 657395079 342338016 430499619 277433528 972192912 717555102 202737906 163981213 33557772 554302977 860839144 257065979 186841291 262833225 213834614 364588689 332612811 223528159 333336926 378552018 400103889 901753501 972142858 958017082 961366524 60922694 122176537 775865731 546742464 751449125 617603263 88677150 492936631 970199413 842009653 299312774 809636333 6554511 690816201 538428525 932163463 531550642 450127411 494134963 193964573 518858732 677236146 928239694 793323614 655260754 417748740 873995059 301696320 18211192 468774844 861654846 909150384 166043672 305019032 252162956 595594559 847243917 965563856 292655282 410894569 176238530 525742446 503180250 820000208 781722559 751288685 716476843 219250692 724243516 256203080 386300224 561845157 339269142 354186915 546096610 550316598 92274808 805652452 206927729 971040661 917302969 299315812 299494961 226872944 522835380 796013217 807802653 195784903 70924061 917250306 678180610 997859398 858299191 318213334 508209885 966412682 821946929 14622713 494789664 351636288 255760069 972835395 662527843 352586519 372907638 632848258 443310699 4809575 461011335 726911231 947480113 408659507 640319615 461865849 414806448 327266426 485632687 331903498 936279168 153746520 389875617 588087597 725311552 33327100 353217543 555848609 668181232 668691848 849541971 389178317 75202301 895480365 201777917 334876358 225561230 814310382 996152507 322318106 722848964 951841901 594385557 348713950 230458570 818428335 770979778 272700554 648985240 819628837 106823139 25625070 389448938 830114277 107862124 304016887 770499464 488029081 466769653 394979735 391977780 104593937 607342700 876485562 9777958 632223752 153805086 395408419 148767841 846518181 377688226 646857261 745375604 281968052 817668216 985517674 887406769 945865135 146940825 59329792 723930760 622608844 949101775 103136140 551350892 261400482 239714730 234553353 993629756 700650250 145991440 331733099 8126861 453395883 40895910 662771550 925435824 255204821 988481842 831390243 875246147 390114364 647342958 410333610 459764919 249625014 279958595 156490231 946738899 217712888 821367972 319685142 127502887 168854967 19781736 887564580 711017030 857821147 105062942 348373332 885916419 690367304 342911724 173637710 82159123 224011244 893060681 658127645 326744062 578307177 848109592 849910496 287230604 684851157 958800378 958971798 123300719 324159311 169049509 41953996 595628408 364875317 770187682 825911070 258918922 929382720 951606053 418347083 899891234 448144448 273908236 926733933 407203218 702629073 474173851 225025653 71701539 483323102 234637920 53113634 755841257 155670984 733517267 788436721 777923835 726692341 305192032 510750399 485248211 386572814 362240192 917715856 385261567 161185094 730667569 677208001 712611610 714439407 450165579 976704861 487756712 97065587 184763479 420673577 821850063 579238566 786535475 387343694 150377177 449917233 92516387 911755555 427864272 556467160 185431470 165057411 851801156 975358381 935187928 239894765 360387071 272609036 596766411 519762761 685357790 893229400 687200824 376901649 63347823 929005773 789498659 342353479 138090293 728065550 755456554 298605363 134650765 620569497 956813901 852338965 889338769 260882268 778626269 921228298 895644855 847960360 794473383 229904686 222631118 128346471 819046284 627919727 46228595 657262365 160844087 962074718 408210925 835464053 431016653 878669901 306438142 33275207 296637978 970713853 279364814 37328151 280046306 543409712 367631897 262776251 59175998 377449950 908169343 931247100 533086188 901596682 396059061 875508094 107131062 568044384 643054361 256206689 167876084 387420435 754851891 771930606 904949333 589533172 598100796 201589275 838338689 301437020 67082519 986500962 874680465 156975938 928125014 50871387 979377458 390388064 749659040 14978921 306957848 171146219 15801764 517635963 268704312 84942570 858207447 766511796 559260730 169183454 712147409 153746218 907842590 413085706 404019073 688435801 325180370 732072934 223336430 30224168 465313269 102295066 282481601 179169703 460709340 900531708 519023945 796293913 701825439 330464531 733096590 521549952 370271541 717626776 29988633 646363448 414655034 174753446 457314340 387099574 712079571 337419573 83059405 370291230 553564821 39919536 208529982 810440886 195931674 351512421 955561669 996512274 493430874 179611781 549924676 286733782 7963375 223621478 226153382 799867955 734838172 695930741 414985590 49371848 700589401 892049291 785811580 574116833 341655845 3742193 369096194 984492164 876191516 802140358 980039450 177919077 927571529 691879684 946043328 952126490 327879259 999976563 20871450 698520422 495694741 901953058 525816674 404013543 378798314 375621295 426147933 463279220 46448855 849902944 170577186 197408680 941464163 629993456 589273242 640600917 914642099 927081415 491739382 220124055 743460901 466550712 487620905 769721848 751850893 993960226 238752735 749775156 919074678 455705251 990019309 557336797 59043959 36984051 902654179 249041529 377799041 168615480 179172980 780034660 956676817 14038775 385248780 80512032 436754438 714308903 62514083 528174035 596536848 955463198 585669835 377187778 237735285 511044223 765680939 448058566 54706065 834602967 671135617 116702262 674243425 695809152 825091301 776593079 292898507 71536696 254030036 552825178 363493508 302311962 689291974 678888931 70435218 374746478 515950568 805391452 124448113 234484026 818488629 552471004 526556088 458059195 726255600 696212928 819209516 346965662 787697600 585497457 755943296 946436630 785439426 311053098 892730123 304951810 677628514 41397216 647279412 511863756 419122682 425451132 517534496 322987521 911654829 229122398 135956565 196814236 506043483 249751270 697629969 97773661 845113275 794643119 437259720 906684815 99054766 380675303 406411225 550013800 29121233 808795778 850383975 403419499 824430457 290199402 943793930 53904243 22512993 672709195 862233173 578691132 436130474 202519063 281161337 287410285 276560986 199485821 308638408 219857045 607771699 611002294 106366552 149496056 29414234 987017859 626350412 301421364 943335965 706907038 599739844 547268097 263654691 334834807 750089655 146553477 12073739 727379882 890943203 982850201 90714242 614423080 661601721 79934158 644944214 685502945 791969752 508226924 182907930 439412131 723021696 89084118 621425925 232960494 465215128 848194133 595891374 113926550 824013730 527704295 634184526 132096075 811728051 37242533 512142014 816598990 613157667 72692316 459280640 501343246 508899501 70942192 209761262 333578929 497356508 963716844 215171242 923168999 615619875 742664111 201883462 45404876 670363572 345891554 664743357 228690854 27674195 474456257 462985529 791109049 967039711 885621382 673365094 433515397 822553618 588061081 722404614 44911670 297344937 736872458 884008373 323979044 178270540 59592891 210887682 186370362 22269059 198505928 535630372 744737093 385881420 953312936 319597572 467328977 831355848 312855500 448563777 824490145 132168269 794744375 765240635 639722319 655975163 770078994 503118938 397558331 99026680 598213262 190639023 147115186 97146251 247192611 113372479 613114951 927601894 297563446 655755069 1714144 806570877 192110782 994127518 672271687 977543216 81284975 546544824 766616878 417409090 838209773 607643720 772658454 539990149 51588063 547570254 76964097 772046461 98374318 939754557 67243388 595201449 542022250 246164209 79618905 958897426 98789380 920888464 710518315 954093666 506370869 153216044 968155562 371545294 900791979 476104820 485207976 852947018 850343387 396661591 470493308 856030544 590957750 224511755 979193539 197635788 677647588 130243021 388408159 708850056 688329918 318634929 371166478 342226558 290043547 841680354 973602405 158332838 453480415 102793313 10444739 139391308 198844713 86345309 631505044 23782281 940577827 417646698 221047191 672850032 60588108 701794522 349858526 812394509 855181060 347607944 696172831 220438558 245878686 911169533 694272445 636721916 113896170 364204996 249938491 794554272 392532061 808340031 146715374 186121541 428730444 800692457 228246272 162234750 987010302 76830481 567602368 164482476 21591918 429076489 351865077 197609603 931147504 594449979 126202191 358477893 333547867 16915108 440988026 1469955 120206765 519483497 512822901 735084029 354662154 762497989 498151793 26834107 406652594 640224570 978005831 679150049 56667455 382166498 173280217 303293787 299774194 175753412 731778439 901003466 311296371 201563445 523702704 966437235 311460227 778139410 432989984 730114950 435145113 668555239 240962624 788713798 720901361 74096544 966276506 413177793 201891174 341242262 836774068 433898347 741257974 762775294 90050649 134766245 264734626 444530722 678750033 269800010 514933571 755462694 388822436 985429230 717342787 739940245 740480441 543403241 279582183 494005576 74162013 610998128 848719686 482774851 772160903 340949089 351778952 426957555 684072322 255986335 334286048 874234672 587486478 542133949 537592472 109097938 898422912 592742299 595040782 209547983 881754252 552332944 500132091 298407889 368737100 886542475 230638571 290210005 401049284 727053480 892764829 131337763 24169803 398555027 932991143 801862197 965084148 573800325 219342054 453894021 370387625 654843654 629689457 546926601 126706035 2715107 7588186 998629782 467441183 897405059 728001145 272440619 529178308 401206329 671961633 388651408 7732753 807205322 139142743 103794298 37546237 670338114 419199172 390795996 135196173 498694535 960601292 37882398 114819504 544596864 56871057 425958867 101657455 730935174 646771621 52873883 35079838 299647597 952233465 756992511 450294873 580224642 341867806 750390483 555199950 945863760 141272238 32923763 212142274 540247273 236240191 327275882 137564945 497845451 855088854 532298910 306353017 924731718 664670416 876477381 634326384 447374748 298052591 680805199 282627143 312869616 245368723 699285700 924735457 546971074 927355640 523467353 488023492 130153949 116718261 478206478 837551944 390006099 265888234 96489884 571510345 165034191 129590443 282653763 407329663 857468878 209687654 347322523 180045784 942267221 407411861 106296652 455898451 305766276 5491326 805214478 107749426 955823215 627471443 137347178 633800975 637049013 287008458 202566777 711070705 467296660 1344029 67765794 349403314 144066291 320113018 115610275 388894948 815610970 486658364 82711621 268771640 273517527 635289713 154945659 494583651 161394047 982823242 310586884 769916119 797561135 567974672 345189850 390320266 568561078 203556876 248632843 787026030 599028548 887991108 28437023 497895477 402795200 383488848 611911637 420535629 738487871 388726696 53938130 664385113 65148304 284354775 500136240 866331114 93415859 103388765 126939985 430330284 993130343 84932484 134333380 719086265 764376223 275806828 232554969 481238084 960646563 187381668 419090042 275256330 915569699 68350908 613562629 685235687 759775477 919692576 845993050 513944084 8038755 174226327 185755832 311412449 681963385 478389532 544017421 52598904 733974923 286705213 881665077 64374759 366074878 609610700 224710523 744302601 371750790 659787635 85459157 948026792 533510095 702328738 757455864 540129868 439109071 775294965 210084293 566369474 367831117 296178849 315944534 493786484 811907930 583962519 561822740 927049300 751821432 705530222 785898397 548581868 354144943 236332636 767747551 106065882 288902945 215285369 474746163 663161403 785244660 743721554 254345521 394745071 713821189 526266722 479832595 752058573 582051306 424748680 346492857 165203383 440161810 220769042 618166353 76049798 305245253 205195623 568595607 1726177 550174114 496928529 781839029 781560917 203100661 231549535 391271834 89823359 664434300 879115282 513679859 832482980 767854232 713382964 233416000 884989160 750466271 697264325 900903766 53483224 347333292 828037331 363029742 553428444 40062961 287945710 764423661 384187982 623654909 916935744 267863491 760924629 99601553 454289722 736468291 805254881 471478686 585766949 690152007 445395934 66490153 388572114 541202881 377387508 40743738 530748352 820320305 720787850 163207015 878700618 336070352 798241301 985754796 928590324 184646732 516593567 320594486 888475008 519553899 858033390 540064138 905618941 50800948 802998770 15354348 938117916 536699001 190640292 625712924 386595077 409506544 355136622 70114884 294916314 255876475 488985690 220236916 112040100 206927472 247324351 761390196 157224508 66869539 206899315 170413279 937511598 145963191 626446240 739544015 820842447 591458068 850066789 572252700 148641586 560123883 78536020 135643688 885668231 60861898 512687191 246051802 571665878 505353601 928607365 89562434 80352573 59929196 765204247 685263308 365657019 18954948 66640852 919541391 124230763 709948868 767226436 158900868 143974399 262280001 419127488 239926176 587952908 965449592 601746927 598758045 462604959 15707036 676573773 758139384 934476462 473901905 69318573 685688498 788515260 197975796 343326298 676865728 768227059 180420625 654030398 666539490 952549511 808672862 154959016 506594391 273045682 391066235 61043120 404789176 346164684 348136119 665969927 412180578 750035835 834231815 707602187 209430620 585929549 225866170 862459724 510932579 831336696 268689593 454121339 216891755 540048362 106996644 605906237 588044570 669126601 279381061 309892772 374769218 171212251 215488380 980885544 7790589 242312190 575872014 812328121 449749399 129586390 888603575 359091248 175905314 889142911 202248969 50954349 580161366 453995180 35222838 394579908 431176265 412349131 398056749 876667690 638349616 495288602 158806291 56066532 108145653 778074543 583847550 230708805 101813234 730887064 732379317 45402637 152336522 497025803 849328036 571606184 258738378 934536534 974694708 229099355 649529722 180286683 858929024 10461687 222087077 959272252 603797134 407335119 113277599 419709577 742152267 966601844 184930752 908085630 863741518 621624234 476717689 919510647 475487650 340469950 462025164 907929721 543408400 421388599 481359481 284131569 748824182 784636700 595871155 859226547 415759697 725459039 421170270 627782488 302759838 336602059 266742496 292623342 456803774 965162714 96686556 168614495 539333992 313033141 856616724 575478355 271595360 439976193 377316583 615940886 846015143 118789733 845437031 414310428 575863996 15801469 725930951 335839935 119976865 977625507 887852417 341546333 126890888 614529598 894847589 823771680 507412327 444236328 688505033 664527696 479671317 33224971 813708446 515038620 770279699 324842106 215141438 541236989 844688410 563396805 329831373 286355042 150019777 766340235 15110325 213632066 869253190 335416457 291120108 893941900 478280495 614696103 269798711 918254487 328224934 370232539 476729067 618890339 585714154 297696474 670461693 328616093 184333803 916393854 126789557 329912980 851291262 788848949 802429618 832742409 762983045 418709081 910315682 538894245 668466973 646685998 547741980 972821421 387970990 340223971 711838863 113063860 299937030 121568192 360736585 200349236 719528833 30135676 215666977 507454406 309230000 332348279 228461137 776904650 426422484 387905013 665159585 290378042 657565751 170574610 568996580 321703159 654457056 266498315 432201300 459641115 930079132 329675148 832634141 891095011 923643966 277492165 276108931 272331970 88652309 821118733 280920557 910232802 100978820 363298031 842897986 487084645 792398643 800406390 583282541 659584158 419950851 90051450 141910497 688807358 835814942 866846046 300377004 60719221 210583683 965029853 715839764 628084277 749469975 204765905 644005852 568828503 809829138 819358905 493171355 971980700 580984784 923886814 361145801 788141771 469046846 76037904 815539047 473863532 806480730 514033926 357635947 884245225 432859872 346453323 327392071 86829112 848202060 194851659 282881111 968388797 164434365 797979555 809775211 991150684 290286071 424266984 985948281 291209260 693169938 61114975 17338848 707372408 550064982 987254208 569241421 171870892 509297390 98319144 336898055 36361763 402053458 254397651 322689710 57186921 111196427 911453969 323385109 905827121 927072881 137917114 128191002 336408760 361987676 344320306 203871785 364354251 501834007 748851516 981867722 342777993 145724846 318398484 947044679 348963915 624213618 919365282 339660417 499870189 969712288 52962461 266368794 733145940 859244268 232537381 130513968 129062221 380197034 3565362 606378141 965392262 296798873 787541025 180001299 240840379 218906892 453917572 99620129 132252138 792005040 324470806 453710003 487567411 117726106 472749433 908791132 851257240 563213266 852712338 69479418 544668129 158480920 530356678 717277815 301113214 764558715 411469620 252001313 156094727 605880318 784263382 663352845 993533849 440769425 178323178 757204260 922771459 729850553 331564676 728440225 93409265 977671322 616802821 223422388 233665309 247042553 132835651 445040895 272777010 344429652 111673043 807293002 407949518 646686310 321602617 221097081 31681022 526195207 15976414 728754729 98471258 1958841 446183181 515810139 463606179 564817598 902295356 937177905 606444465 818710965 457154545 654940656 845749737 645447463 553530687 360961313 176727526 930609300 331278267 809399032 551376496 245687726 530566622 830585522 775479531 743045479 566096879 662501832 560269416 764017763 788586952 749081210 481141245 722824917 467117758 231512811 756487173 461095022 261916982 537464933 897098472 412404422 500582367 639553405 414813113 907831549 711522094 564535028 944804448 222694251 543772535 913831548 319638493 118191194 236971419 568843542 912372620 459495946 33101595 784279283 994993110 483042121 402239019 984078958 394464841 878843674 557656883 148574976 294410532 874833098 244392564 854775453 179172161 587888166 578823031 572237614 886195129 326804035 402590097 381207112 86541164 158838105 402697750 565580076 826799379 431246290 52595020 916601109 307848800 773886164 878462127 245898368 856711538 637628567 966399432 248041553 455414859 741251291 969032126 473142464 289840898 529079704 602235559 425261328 104279408 348720658 27722090 742084576 60915731 663371049 610053317 656478685 24179304 874916119 629428416 205434804 572836520 28786438 601234005 922061948 229856396 745397782 383431171 217234821 662358553 454013954 299028600 21327208 979721289 631564124 764019582 561276163 595466155 304783929 333186395 357314778 9139320 563719716 886860089 610421116 461312412 56897501 834760287 538064202 663663801 222943845 586958137 424011965 528703086 552543253 658112894 91810888 435993316 464635955 374033339 107357949 571043248 651134926 517558224 689102465 91795726 452769432 310810244 301489004 970476433 904309235 302718781 917556685 824474421 855928515 680019329 628373038 938826723 643103488 158551561 166859757 445657772 810625512 373582972 74069173 213860965 358507413 845092528 168722962 173005966 223143293 231510142 470831705 325115900 925600610 765587407 732704921 860373673 250907590 881251202 126085036 210165893 949347998 489895235 184261127 813413391 753596967 617713673 902820306 111160696 554253795 409783784 344555516 426325368 786487546 152707423 845701503 615626858 777910744 35345541 909504526 126724644 969100619 815890591 849378830 240259861 961778268 545996658 804410777 720683629 248069836 388752099 861203096 910138876 373592016 235197026 568919230 586903524 676145638 933014529 432249239 129851426 975220773 610383250 378941455 258519510 587501231 138825174 566431938 208996470 33230455 418716642 882803212 8486590 686503476 643301033 132958732 44475815 186613544 955954871 615787407 238511192 492082063 864758437 556904892 427611616 837238630 514005219 857319495 141590606 638602706 254147573 364495683 519032521 850312161 748739838 649546650 554163872 130602043 498634465 200612712 433201456 923488654 165794905 802678144 742418616 996306799 309542915 819687207 765175278 950241749 782155586 289842201 843714865 589695279 502376606 479499378 195505239 775027406 264971172 41583950 239562868 170607517 136108759 580505555 733318321 637182992 585221815 175814756 315645720 710419874 682051441 781386730 659272307 469778574 42166120 433680995 725295049 778298846 66520016 536000431 816884338 253243962 523440716 280812311 534954887 624351408 487814202 714656711 949847973 832710929 968151 953594459 471461638 493256094 354127297 238024507 958149928 440419262 108437751 289587580 391671603 735957820 848868780 600272185 990206467 736921879 738165307 62173673 859510347 756202808 135858721 109106455 349555181 645857307 974610336 329097971 635436853 408714481 941461309 991674835 414714087 907138663 993247898 49418385 764436579 540616095 104392631 889337435 400529638 808541241 530097266 242489570 240827965 493345555 775611086 943451097 712658027 889569979 627656361 545212406 517139985 165906570 402291648 276100299 227309435 218353070 719656296 469873590 812580143 109927863 981754953 729484694 617399077 830084108 288021107 47869025 44230017 684555642 582096201 256676221 178800347 63118245 271956709 572437058 456922380 242108086 676942998 93693238 779302243 586601894 182734908 810112614 125041277 706513235 179397636 34544230 971381427 853031021 109041318 49393239 569004950 537271275 521928229 854405815 497818638 919980424 779316130 446588123 166162371 683897704 237588324 322154478 232657904 667272724 316972780 260156860 668350145 361808325 912745652 851833951 352660983 59273453 259022943 568423598 609903413 475864152 836311903 727094476 63197880 82288010 774602464 848452289 651890874 81976338 161322503 888729743 768820963 403208811 528947474 388137847 518631606 270053947 823725027 492769080 392617183 237064592 680000416 593250914 811057529 247175791 629278965 152406213 424522993 935664409 598856625 478565831 86292953 394471834 171265262 841638265 755451883 301052549 394054934 121367962 531286896 295705833 674352889 96534233 466409345 554668633 182390597 591425947 734738229 468431899 369187882 705868106 518957848 505803758 298290141 916358187 777129520 603160119 674216529 199200253 287888662 570358875 570481615 972503085 944468930 177787536 683746537 148808355 987189498 27800474 327887229 418463385 574986451 695196616 408525553 935948987 88097109 333803486 447887790 402141645 360225747 567293897 958854098 106749661 235115902 554266491 361849307 524213007 273001524 520254956 967506071 40577401 454656457 8280098 223534308 636066222 968798866 792613345 657683412 55466473 307357425 860042697 248293203 962121132 548438265 13039886 773275291 552285416 157460891 763278624 552693866 7599073 407846445 607779597 438629739 250983952 256712516 690344121 171047221 806988394 900889290 926459211 537123282 34709864 790272623 293159199 821275142 801076046 312436250 603977065 415307785 94240016 629283382 699412533 653171393 507381785 256984041 655302100 122546822 99875087 25794146 997547055 487047904 88389300 423953405 845257126 890088465 177640314 918459020 76852199 840406179 5280828 52322200 344434768 921362412 96286130 952235629 963675899 321376134 205366336 579787526 73998376 923272203 344144288 148576559 854612948 873055786 892045971 318814325 109445592 441097298 5983072 971920402 648375841 680897477 564549580 162536499 284084053 910858166 755246715 869112041 866660019 183760530 144722634 261516082 437954025 115128846 563868542 935758645 877973569 141967379 777934 843387005 536891810 230582507 459934550 128006968 67457138 423732608 464785549 486904097 957790536 358381739 453055463 858465627 150577886 408179332 907180895 832357752 721660150 388627949 749989748 526336948 353146785 893557680 209534745 428381259 598636184 995433497 109460465 652966062 468762076 276172679 863774091 732342200 28903287 104695086 382881908 307020494 523863721 7632473 570433801 955300167 866841406 560451846 135126015 336149667 843157084 143754151 156126926 31608013 722766008 817698349 472434734 226448537 936345014 463121697 716293378 470207455 18895930 522833613 368707591 349863854 902182985 786631942 242758274 249117387 214017951 498070888 731395101 115835342 234625039 684516766 812081095 797485389 440559050 704308028 717084458 754449513 95684877 880998328 444213606 608976107 506568630 806125199 924891640 692767654 485771842 415234010 748858526 198427430 73498807 371042805 944610561 87621151 884365521 481064653 912724216 964014058 738801160 973379244 496613624 402074661 314349153 745809617 875309967 336938536 882115234 979335567 650328157 189407732 287246996 295012313 978880471 161893281 494824818 99458905 579144039 273371757 22947278 308276946 524478423 472041165 5528478 908352587 664567861 778904667 556900013 32969429 369925890 866816329 760509877 404505355 766844973 471534423 82630347 410094146 792704205 366358081 970005331 48175075 944574773 251834926 269474091 389518246 395216890 450650389 756779386 757661587 289076436 679737199 282423535 927592478 535272432 74853501 781927415 11697726 194871398 580031833 587653322 380834147 187589405 83024091 579415007 97001668 497549189 611490580 841197298 686472135 915966312 335894144 429097199 576596346 833844844 990451749 356185721 890321076 626314119 998940643 151280668 735875250 714468734 191769839 132791694 980872741 695285185 32426830 570637767 709797760 212915059 530421243 972127868 259709171 172487910 752239979 984052716 955000824 434289757 140280320 699337186 905482026 381383984 68507443 510402580 781464929 21306269 48031038 770604359 190498754 779358224 111519031 679712557 224037745 74762220 929640120 905436376 258801391 225588955 955305689 723933042 241644115 191586571 648105815 948927381 3469726 308814017 831274097 321089857 869122922 976855532 546123824 50531016 664525336 118307673 151304332 203933176 46175208 347332111 815085052 387717797 96983085 125325209 267987747 491297551 676603394 324835588 3320634 290088429 884556287 871618183 882579337 763243936 956765361 405575874 875172220 308780628 547384620 869443722 967490911 684641986 329972555 424178408 444103374 408843254 651495001 21533704 178378607 81232628 248811219 895188724 644481336 274021625 754832542 583877155 470561392 190740117 432541139 307155672 16261230 919039953 294648027 39067182 402789388 526208183 153091931 688653371 221064789 104550592 232912674 901932648 732436041 913597656 521675259 876343134 579107177 192744755 252333925 351057167 14536624 420407185 803608449 841149632 969967367 783289648 956195971 664077606 827066634 9968978 769447059 137460870 361553339 814349031 880814579 598543631 42538253 35581844 2393637 827351777 86397591 392427047 701160052 547610168 798837653 47611239 548198462 427747428 653122888 665250288 167269254 980174325 770796818 58363092 204694873 936579983 727704707 772483690 234572608 848279775 91952891 338493724 419394257 35208161 579995315 237449315 12049377 159975350 978303488 997731400 783874670 717736207 439846043 778025102 898406602 670378335 999409655 324028617 597078233 169415681 559680083 283639482 412798397 430881440 212488656 682104864 577345759 354157170 307598309 56038807 688805109 226604298 585770029 999067124 981903380 820834839 665517733 386525715 379792466 989039149 499853493 475279973 710188379 349827767 798408068 727950558 356598803 413640749 712788095 103645793 362682465 599772722 773498677 861597822 510701371 937871912 296737711 402088384 939894987 276217908 665288808 942054903 313968887 174244211 279267864 4065569 405821609 700592385 199698504 534315710 833460933 560433470 578193362 673441298 725748166 884376883 30694898 362638872 232560234 525559132 807368016 124311070 299154206 433242002 557173310 160907723 331909787 287414483 674690296 881642839 199251889 155016616 761799555 853872715 732859234 884968863 305405499 512226238 522007314 903047935 393564940 893981085 641739838 885340605 98016726 827781262 703207755 211332197 944547248 249980076 984121474 800077097 27533131 765260793 207097115 101709239 763196591 279085963 496513850 755594008 426450680 784506378 853597367 252537798 15484422 128666001 665586463 337360356 475639974 256755254 901578748 840354759 499135914 121786344 752411529 648506641 856751082 451580489 519294636 2195319 914892693 650585369 580744093 734646700 605041844 426463446 602434661 894349196 162550250 623656133 742163049 464328504 914694935 307045754 164386978 782600986 521848506 718271416 638564431 299245068 693673864 631663526 464370622 226402511 197858853 108597031 346424543 170619997 934468530 430350489 419439033 81571337 696536461 619759656 393766853 223928426 529064420 780614106 709408923 632977207 203453169 500879937 395889772 696998067 507125940 739907989 61551852 924593102 373376611 423189961 798226817 13446121 890177052 867087550 700571155 377957679 801768077 907039838 550727227 504245768 595030249 10831768 989852462 310848449 606147765 585604072 34107644 156448729 561870678 605251838 254939490 421463913 57588726 897358460 38900473 789829346 616109516 577125322 322139902 965435211 635032013 325927486 64058121 344637239 104408085 541862508 682286984 331254569 118100728 558602060 979444624 266003583 981104478 112739966 437385606 628813160 826951911 956770136 846356563 66787501 693211709 993859362 548805402 815412727 625158212 855422585 46339874 617410887 949144886 946927554 494099268 107206357 600047656 28707423 471420549 109032740 121302188 922401458 328559077 754001955 95736891 822751636 927661031 218994394 997319652 145064667 219098955 307793621 227972017 305432092 106193867 445757596 705514660 902075472 1286723 697394110 473656740 978314940 964548839 355518354 383059035 825157002 391120350 36998923 186340145 169080210 70289545 784269058 134661106 652243432 95672415 971125465 899766341 290584941 348359501 801183862 361681616 435722791 813911883 763492503 675292309 200303003 308986599 171440259 886504129 338729950 456112890 69988973 275759001 714339766 847590556 125897815 298977772 599930721 14415627 5771327 964806238 147271521 692877998 849706964 994595568 652045706 173366633 327701886 232501609 365421450 810920672 7005262 357263325 801248879 202823642 94625206 14547897 101637049 388174889 470971166 865186879 967888260 853505202 242295121 63785964 725277744 448941468 81761094 538996373 294061936 180263017 653495791 749642344 286642684 235042104 168815461 869730629 930511784 387368888 507175554 212348311 482546170 464810843 133602617 784161752 872206048 317386602 702683319 756426683 481319431 162701795 982472139 790166886 928123896 357780609 626331942 170921006 569795270 892244634 204821507 408133018 735022732 298101994 817259440 45396125 859855319 195488525 159768096 439557317 428903302 843078921 985758235 216624397 523144662 984651711 227551264 904561662 979042369 356890354 953043413 192041824 179326085 283282301 787931192 665720654 522120314 315585805 497650092 361556808 675975476 4815922 506431073 891816080 277928760 392914541 172207224 985333580 250478884 448115485 712271606 214884699 451415402 783534765 10713122 942010000 474876333 407254432 490218509 34980675 401304747 139210067 873733239 963517228 480269379 898368660 187406591 255995143 77965480 714476619 430664870 61243213 818817743 786927581 440457429 642743198 208249269 220549497 399173465 993700198 912786846 484086576 606351747 14323957 28777351 7772329 804853002 755095948 647831922 364227726 851651799 660146830 789247799 177386142 495829511 88712656 156036270 625490294 276637249 796376864 378040605 266881237 643314059 24525999 191145693 871794660 74079673 15137341 620169561 609515595 175827536 72507046 166350947 854348657 741676662 137850001 367664050 780746589 361309195 822137676 338294364 211414805 624510835 540885341 984984072 592627259 891155083 997868099 152206977 788826485 5845252 220523014 827402714 969496671 554977890 49808352 830466984 732159554 147440373 954229526 303220828 721882976 712455341 726893683 374127842 897705702 155296647 461828030 525231512 499175957 880104859 646423627 831840430 274835712 776840385 213101508 535027748 11506693 471409958 374539636 504022750 438718303 791969868 150290840 641140702 900059326 600619606 366934222 67128899 456866841 158737919 906705273 140808555 531376929 543714881 291099735 818627521 149093716 427854668 977196470 474824201 84474148 455911428 684132919 314927096 989407342 931970358 932553031 473617436 341618175 832778241 799038720 403697218 615096134 534831517 348575157 546054378 716410382 399094007 186963303 408614206 309339354 950114363 217504684 79211492 499154584 670976770 207301655 154925548 439517723 269601364 877904192 146593710 165580839 554220825 29998701 789168185 908256811 680153873 423071815 678183338 529323301 958132384 112297368 104661015 439427187 497419072 47876245 157037711 131714808 985474729 769928406 816469121 752302600 969361326 794393030 901040751 131975192 885244868 463526359 844982911 966146966 492829653 937077321 931774313 439967528 854161620 983986405 846370229 173276420 43622373 584303690 817555584 6995610 493865189 934025120 620900041 651113143 268616232 590189061 854647101 681823011 236614762 472913733 226061510 659071582 52088656 925854476 232579900 6491246 692951967 108176522 171930384 205835390 753024760 626732363 923280492 168338051 768548533 388313111 475933665 180512037 317238853 190939343 876050097 386676251 837413991 577987084 669328475 201584392 873977868 278367194 914162374 195536426 144151427 217597365 860566037 703203473 368742068 314632234 856859029 408833739 957569538 770932804 507676732 290436328 519862949 362423917 501581553 290270767 519708426 93933168 654178203 700737532 248234052 43076360 946468596 722658578 568278013 697268884 622562231 882091147 570374272 362754869 283948612 655604680 792710493 283034573 820483995 12844014 248900532 382850760 898108770 580375517 129826576 373214760 352892257 388556774 826074698 641278991 540445416 344269672 481281356 805326463 890627861 25127293 219153242 929485934 553649616 593917525 11508551 344085658 328844010 406654683 991044142 887939169 551520883 169926879 355148238 576815893 584035742 974189457 197870834 516623113 337692508 923872111 21223796 691503530 474216813 68177651 695307807 675322399 722054834 255618018 580402271 241794421 488982356 491430075 492569203 785836414 289604555 952996888 742503231 317245486 191961596 695239710 704967568 693951360 337374927 186803438 760586432 385572007 804096441 98113441 805348628 842657143 10166196 204775175 15287822 79513349 319930916 672985883 968045184 110102585 909202516 226631446 471538509 73091739 854255651 147746463 275300353 288494797 674557193 842324475 347483773 49734505 667277522 886144528 833205514 141471729 330145572 508959773 146509934 299566652 319232123 674960765 990701131 496400908 220139690 715783857 671542919 411860501 779472598 98544143 3950885 542929962 757607712 125432308 941081518 681263096 414472718 835566799 77562954 406946933 190870944 426899410 96522084 789601019 79446923 47347049 818417155 455431649 671349719 887864547 765706678 645414708 840605617 55538340 923323577 100341817 66089642 190621489 586184428 843015652 346719891 572315879 708913550 348149664 238059269 835987112 828188950 867600615 77670220 322227141 203576529 606745537 850718830 557025701 244261072 297760277 845301698 994877652 514598381 57889288 713524606 861052271 642784385 440159165 548176983 962813126 84788908 306814359 754678881 885438115 329782025 261920115 429335881 529244365 363632249 683952438 121750630 714583113 607115830 892023884 82729521 284489324 723032652 656037521 110949920 942751954 188931684 907538284 957509222 549045892 596397607 967154600 476663765 107057303 398552934 520663526 450403234 928490786 353960416 387741781 735745688 36185998 432219940 641419922 94439508 530974294 136586316 535180955 705234620 145095213 433940162 895775846 508590781 80492598 385595416 934276674 598329589 570253672 614035089 595363896 12902833 579732960 2314318 286820149 109420930 717148519 909900081 120765988 708817677 624687533 468578387 455080559 919830964 925120198 924961197 98395188 706685783 932749187 321273272 19303969 836736641 401066714 389689798 346586536 16487907 851315969 504361182 595540619 487296020 651265087 551372271 506477077 899230303 509065787 812390111 190411327 803483124 634738466 138185700 997951407 765829445 751200535 997067603 796646833 859105184 724388212 727668524 135319918 86978166 889636073 103676715 547530599 886370879 467117861 388883363 978318392 108838346 251388751 98368322 30388913 518039741 488684066 777063471 680644579 904922312 592198263 633764949 898263806 810686077 297103803 492776777 305770577 626846417 496562870 753971052 122397154 696590149 300166366 766449610 489270560 177387199 576177569 691713983 833928450 472858227 983031642 655819681 449995024 841524253 222428353 875600394 812769199 905537215 471804474 284767116 324133300 683098245 416427629 883472114 338228880 49746426 644595806 807249537 638498774 938235350 969277289 835496949 833888944 50699350 467297377 149305410 514312870 47102973 492346606 525995269 386322203 914918216 78564025 424368912 743681100 656145454 216913095 811682607 294744015 865417643 822979248 897753329 314026535 385618789 54748061 330866700 789150159 360858675 859423421 793998287 403240197 439769099 109921267 491121342 486712550 523419204 13984751 902938901 754338678 885316591 584762112 425311136 251312038 558423186 478847506 900844528 633143188 60953633 852748411 365959980 46413598 158232016 986211242 866921931 478209552 541615588 505886243 402491997 158055740 696772610 517175084 151612204 127054539 756989864 342243723 17064165 620707730 83418906 628767463 736465355 144224254 411791747 201797394 398589360 296102419 409647117 870050188 43805407 285169710 342874777 303910181 670512156 292765911 994382296 764656990 758975490 685465712 746912632 368352372 185372760 616650823 308824663 366424826 737216990 408787659 856420133 327695106 577211960 580267951 10479148 375566441 750841307 377172489 266285572 232773495 720527974 953923492 313603282 961349660 421410295 711868944 608362937 112512224 488234787 931108006 823478301 903776287 971566135 379567381 943490621 370688728 753166445 132856939 80914720 772231238 705982589 790382083 21655464 630285924 921432530 241371376 940423503 390757900 285713951 501658594 696506756 265459432 514573774 636220961 739126512 392570019 29732682 70910275 372220202 666878834 496541002 304573231 285931508 610520880 439349062 941657563 472857683 309669065 822586912 167661647 58242034 77477715 291988088 398772051 242164269 97293261 153583984 234270053 256757927 874798056 905042130 182212993 429547606 18539382 82368840 514872081 666474841 331521854 767024107 736491076 705131799 953130399 75119293 346199065 628119209 543825654 441591855 665680771 55353774 133263317 718730318 996714992 841765285 333662355 907967165 145349592 725938812 942594399 185640028 558253080 924925442 849750011 678111659 713585921 330468156 792621051 995392701 884444456 436377049 38681883 703007751 813142415 153737505 596360235 709852314 407150088 117681551 770813833 428898719 150022373 58258391 287912585 281739874 505052979 528811088 754606570 584454098 690314218 229453996 814554478 310433381 422855026 186159110 482004667 155793810 537208663 369697531 397231490 962551576 831952145 161474845 447442613 456424271 720388078 176351540 209254482 152809542 562877240 95379000 645303931 40889707 568069216 824254494 617442691 214263531 151636389 228892759 757253983 868438109 987460429 655135603 985222294 776106948 788483056 147281687 619202122 502671785 266607702 294041259 682792778 665377596 773715480 55007947 172910563 13930295 82205277 11150915 69246711 148574742 774752029 49771646 986454167 591478822 810600987 8341178 589116454 526753224 334223369 627890632 873661561 184921776 326354296 503333798 940091917 229571983 852701866 841014495 117866995 313392406 40489691 985548307 969026062 415037904 317613282 703686878 887171769 916426517 146522657 355607673 789830118 226612818 433899244 692095330 865413090 660478128 41957996 474308284 429167124 425898208 275112332 8016185 23062479 540378590 301933324 797839584 927818793 645136977 465701665 917637855 364882425 668315795 884942551 380420097 77911014 440749431 940375960 928749457 504718223 646028030 403932166 739179351 835997462 137904146 307228302 289747580 482108662 561221698 993418228 88874479 972957683 560153148 530750419 980522299 672530692 247318585 852732793 715995582 256342240 102458846 899214237 12963599 495721025 672562409 867969072 331686267 900064119 594062835 602972999 1283052 243407079 173310974 925727277 940300219 510763713 409795228 959028682 437158043 658567437 845707263 788426591 123924156 687864385 836424769 909725108 105553753 240213933 107164908 619599645 110577211 515433283 791842605 182417184 373739606 420552116 973073101 186160769 942432232 959497863 492779559 534439643 313470563 526838077 423346450 26508721 227926828 249060339 857931837 390938799 366272562 509029342 241740207 862507204 882360289 516801488 953703025 210590613 581525595 932922848 962148051 559809645 557658880 538355473 85899960 897882863 973137984 417972837 547335738 738299432 804917705 364922337 215111123 988034423 820068338 466570255 330796606 29197157 86195957 317717804 754599203 731646151 583753688 285204632 784180050 794679342 699621998 747304243 385232722 228881578 31703899 482434477 983175199 301963578 580979809 702914773 480472032 323558541 612774542 574525082 744620446 484361209 269564501 288254083 323081230 429304138 710023303 73781740 245243341 145879806 913334118 374053620 36379382 993780073 493662668 274361933 625657272 243853980 690962890 774676526 539884397 692793920 77094261 54471536 701734925 810251580 19098369 86787951 800097621 355691857 411733545 250838935 728256778 831372272 398732613 410133807 583439595 782125952 740078859 156752943 133208523 622071269 232742260 954584087 553483113 98555477 876761289 154476924 616304811 120084417 330223469 647324669 719798458 608928 268553939 169597292 906345658 470919546 648185428 535097043 847175250 533506555 355221852 88738157 776542782 634077566 178974904 611205157 89191901 952078451 284132300 710466708 865971627 49616657 882759719 50304614 971027591 344885284 985533537 190310511 175475951 545817410 789162941 995903220 403653726 523814012 482584810 305772195 781147328 751037805 566199571 569373611 653801228 349482937 249790977 372011396 884008382 289874435 441744045 881907521 702697715 953601468 764357642 498914798 112871564 745750214 442571945 104133447 926649715 97988647 238770965 696794959 77525327 821319427 397845702 790440934 868425077 129626973 855418208 320927079 187609932 988003214 481044189 620221479 489506471 137001088 28921167 363318574 374868782 423800221 433442564 171597538 145226746 452416135 19430546 548268201 133021401 261817958 60723242 799953478 590790433 663090544 997981638 549537265 651621640 961444466 694109641 702671339 927400644 17135375 221646110 569361425 681047111 304344203 260344683 329446339 726073286 927034013 989027131 868221994 356493337 731548346 771035478 381390889 357124444 581091396 877545854 874181978 811690300 426642300 566406266 137663738 731346124 87797866 236467165 935752198 408310895 117130024 65618471 403324368 753535452 128189298 869820898 363733217 371187109 350287074 44240197 505728206 818176645 433183080 979907561 664717149 547161928 820765633 891510532 586056488 153186453 607838369 414915791 905516410 576002439 904692552 995937858 27965870 139967058 515817155 637978074 428505839 260240590 16025549 885941449 396997420 207097332 643116186 761949246 792630072 533311422 41798449 167855537 747859664 578133615 162706693 755819593 721660729 692955734 968226378 826344796 351030911 876921180 389941548 197091682 648262774 439598254 291257031 226287276 453217662 863086524 685731504 355243085 391292734 722262496 681839322 852689384 17327579 335784651 354650109 363443734 727284338 953173771 23862216 172062082 856300479 344102064 735649000 927037747 265147968 609444247 769228849 922493081 384527538 10672872 983267299 982483735 81101285 783701423 284998359 529733247 746000918 869315626 373000030 41335343 50457995 864101152 793749650 879577391 783783158 584960041 277764803 414079107 393319938 459272827 792521876 387811692 761772567 644407958 911852553 692304608 260023326 641495488 82958537 627427074 314542085 426153200 152497068 91216685 38490918 263927176 333705604 215916252 520442176 561744125 342287154 273952550 801222592 92118110 456450577 455785942 714675931 254996446 34924239 121083999 677750061 768801581 64611592 894858896 276996843 492963460 626996491 910513980 430545888 39443772 442349457 666270784 221600493 664363818 618989483 603148764 209899759 362375449 466704000 100420190 307285105 951739503 637794389 668586633 318026200 357998094 549441027 923360727 724137623 882671498 916624206 690313160 405341880 176011794 42325426 566073759 859889706 740507649 275192058 906579196 371989493 563506042 65601368 708107470 61668127 703762943 506853814 195196111 123981343 205417234 587423280 865665437 475143582 47436657 760340716 922023122 729870914 787375405 599374242 42186245 919831936 829922265 402166968 889095806 17982458 769915174 171781041 87176246 723858947 773689700 141217727 89687331 168652381 522808589 266984829 519744743 228315130 661640084 532122159 616501945 649923225 395951820 898396931 370985819 541483785 324417744 770252169 506630723 781515141 817357210 163224060 679235662 421700186 754545401 389518202 540630060 646246328 615467661 756528172 786263502 337012893 155058723 411837937 43871772 801697804 984933803 763560534 487267125 403357702 874797629 20571649 209835869 887959771 42142089 120519025 40835393 781650764 135503722 764666729 602574049 775460914 223962205 769634523 191976183 725720632 827881730 356183297 904493261 304851306 387366616 602282284 391078070 209990009 371416522 818890207 97372991 532510695 59440101 108652742 300165868 236492891 481741505 827824935 550222678 931836004 241152459 316187655 780617678 503480378 838513611 176093535 337316839 240671523 130058269 50521549 633947985 755938989 274631243 743531257 754260770 288622596 340635373 321934249 824179386 385187499 712211038 737236090 313600797 748289541 869253350 676808427 723849360 732441763 204934340 5127100 13907340 56371608 177905922 813209823 441667357 433219210 401610796 95467440 361950230 870909596 69449309 592286386 233307769 906317325 592668531 588585817 898966348 496537069 694816882 898312177 700396938 593328871 435402070 192757041 280203469 262674788 898710982 6052908 425106880 58604806 383828569 244654915 970920361 774498104 993532720 109636071 971914458 31982159 302858643 474068974 583053106 292215720 153124751 394509566 63439227 518319052 852197536 185457212 858256433 886669930 915406253 379158877 875341910 299851167 812583310 613225283 461767934 714960281 374125581 678564275 739632563 438086624 51882703 406309488 855161601 899775128 816016755 590996822 280347364 909875376 205074598 86076027 955436853 707091730 10083925 58598573 277730777 759755382 516412231 557927545 609901392 822289248 733634904 795603595 95453170 521908827 421085197 564700241 697622648 112224166 259708681 352345806 683983731 861942045 274737930 845832984 945589099 675259746 676868689 501460645 382505098 786382830 993659146 880091599 424279634 164565122 994770405 120672213 814441894 384866512 143017962 654936078 619750466 476117381 14503358 610496633 254404509 540903164 536433690 333715880 872876970 121205711 240740258 210457970 63015361 482445995 111547839 684592299 78767044 856857597 15729367 826988652 451434340 937277608 196758817 978388510 396106693 129959550 84354725 440388019 944375545 831464298 705898577 625673832 525617160 771722072 24363596 897702944 818457148 665876068 66776433 822175858 287061837 134504133 789634439 436856740 348861028 511565344 109753455 45175155 36625764 273865853 931912149 621774008 168582516 243582256 282957127 773351145 115133528 952566052 81678143 991856484 517596027 735344021 31224952 916680359 494692868 646585613 809083061 454140969 487706196 393447037 275576216 767190237 134516285 405309357 867929677 445307930 316324236 559298674 388697540 107198407 212379707 667700840 666582679 961686692 418326275 95668128 924599206 839331992 747281312 124358195 57092378 888532477 874932226 885269011 957191181 125915151 316094437 506697123 638699572 107878721 115309509 847757603 232791801 20106311 366513609 161713933 729415897 471692718 728022773 30008045 121791576 580953675 621743515 610752627 503111848 330183158 522670644 226030195 764723188 664320197 940374668 878785249 257920671 906476963 603626216 500501374 113802552 611617477 510663919 816021882 587890157 724245159 849801011 854275682 301492935 640919924 838709266 970076159 656515447 542024210 968749266 201445163 131493391 344582854 244718032 512215342 284106119 676100269 458655131 142669617 995415022 666544973 585804444 44639821 341902040 299195289 175635282 150558017 551064871 284911637 607894569 641920537 418667595 608961820 588847996 300170371 558304382 3894221 634019282 363129818 210621479 981287044 808401386 309846838 584259768 363136639 884472804 533257134 336469571 115370148 889896901 651826899 399190244 518846170 700519342 973336753 735406636 64598241 467475759 893584121 352298973 704122496 77985533 489532962 405239330 430499674 249311104 443313142 641978808 450394007 363795161 328121438 98998563 437951866 44896469 625519673 572702187 996522928 576804575 455099926 429199249 168699445 110917254 148345318 584466340 73794004 73493261 212432217 567095854 967729413 215901042 579818109 408908783 934727494 756949810 606142662 884719036 24025686 574985186 368751769 508940869 834724166 108312354 460834215 265988712 582906783 246644449 547045121 470548154 387232716 182482049 166449268 434868206 193044192 718665089 73571197 181138418 167695293 90723253 776590877 800744875 945858119 295161212 449384458 300933443 57239175 55556140 243976190 27049467 353250453 20140507 89272994 31420179 344014420 608596762 297194036 872487592 351011561 522396521 152350428 649455688 510122336 813910953 577510934 384424451 683811116 598655543 38375402 381403703 502252570 285990093 499375647 973158148 3479470 481296280 683730306 784012815 46198248 940925855 63728760 835370255 883456151 904029098 14858540 673500482 929043417 127292570 502542712 136381080 366902005 928063445 276928382 190432558 521619376 640027859 421666353 204552380 74016937 637589348 582656949 353047719 589279692 873319900 847012460 915004133 137657564 594348331 801994064 225910815 476437410 691575961 71194902 939118156 825610135 461243398 804603622 944996711 609150927 969369415 85646677 33526273 84205645 118042449 607365981 150472585 782124454 374520063 46791960 158080290 908148985 856098371 627769517 58465844 922047201 672075747 956617658 729079224 13265638 661101442 922407215 26132916 645006322 314486959 617790301 319673761 441363752 892462946 245145418 96023085 829977860 168612743 308597714 574574974 47874387 76762051 667025250 817958409 127758310 25146662 323892967 838199511 600796386 345077396 654442726 983694506 816338050 731390932 359369695 454896682 700906361 300143449 364248802 775016007 755514911 164194492 447225929 271425751 522044346 617064185 61423745 96898922 964699759 708419787 321880210 816294609 333796611 155046077 639793869 203132440 317292910 273734119 689518424 374197706 916665013 793805174 648726096 251990927 556057308 32828801 685370772 945800877 925847112 248641461 678345824 946592242 923842108 151834154 364066181 94076588 556772745 639922379 656125379 5617296 728089055 31836631 137336717 245988488 431085299 624353813 306281966 285294262 350105154 867383311 563745023 528614418 65091979 425763078 294733017 441350008 631306079 822059042 52351712 808768229 870185495 693615564 425633846 530340232 257188694 753612532 675074395 155588721 313538216 780555416 177487876 919684451 775732626 138872942 229583750 844008500 360647848 484583884 886695778 678352101 842064882 991365623 14017543 483071220 1821320 178522586 989961576 683651833 454795566 522609260 740912316 265706034 147586980 79131038 501465862 538409195 34262482 369458421 279759817 510492112 390571558 822619041 779929542 229520011 344288348 155706054 515858942 356473254 708034913 874285793 539035253 634872868 410898208 483177335 849958867 569749915 684503292 550495912 989567396 833728539 454833769 811541308 969221465 781077915 677927243 811573368 544432986 544776136 177398419 816847012 209445255 554218137 759494932 425026182 86700394 269492488 733101293 442548996 975307200 697224954 882532822 113656643 204141377 565993572 364295232 132146372 937923014 576851370 364803166 885102867 399438773 975742603 538891820 403956294 403827601 595026144 204268135 403783654 812533840 213430441 668700266 339089927 259484525 530224372 585024857 940216317 528454669 281398777 702760896 679799836 865556651 291515543 422134392 738399015 775642386 455580655 353314668 432393999 967520190 895623154 944542923 204970755 189924004 440694412 319633822 793641119 553453290 792809075 104260716 886032312 838314475 571175948 16081698 476862133 917224482 216972415 713533570 883514646 288887501 107682786 700040978 813053844 398347751 152755296 668206819 136283179 433946758 206071602 402618232 755950705 615393989 405917458 632910395 705800046 677782838 753698691 720313203 234390918 595102079 811457467 762833825 61408925 331771052 767379769 181985974 779057838 576926247 249684090 838677939 39545836 147434289 38456679 309937166 388414701 472177114 125715299 79924073 683813668 395785099 700353302 548340621 349369706 384241440 17072858 139058906 819124038 977019820 936768812 162375639 358868403 281310075 980171091 246375463 154426753 613831181 92636453 861685114 289227915 494822704 910667414 723765763 31721280 854047957 254634069 247825245 469636133 687384213 243909403 534829187 455533121 876953885 831139026 893486107 814327765 806751590 956349352 417753275 221097731 944904659 526901529 709577040 367328806 963066743 144350552 818295720 713187490 228153448 324952403 406142454 203107715 12863817 741731089 596442518 81779229 933991687 101849291 54398221 782268977 117388497 118239645 248151442 384987058 336469819 207988155 981270673 44154301 217601892 263097616 419742789 651833862 646219296 618750026 684518795 282658557 709005285 421398209 345331042 165464277 672587782 694084397 954473091 672018788 311756363 515935205 86510418 313742629 81215774 605697092 666826255 958766368 322316196 758405786 411414700 22132355 67282328 391170702 236295723 692032217 604802937 343816689 369572085 163239718 961003483 681543702 712425766 981797002 911119421 433843197 728691129 621503451 915443223 998280402 585703677 945194859 381481208 447104379 259078091 378458813 271531581 44223017 719001769 318945920 477436667 71918601 47532054 398419802 381030482 19903520 350957872 20862775 817588474 446062106 576551291 428583084 851594801 278392635 919762025 503202873 988386711 443112040 386640657 181742009 317131819 301671128 853160511 462874961 200498265 825764719 857457682 361816382 860007535 875231980 194004941 652948542 380453757 344938035 893281625 819752528 979520363 783465609 156115929 689777486 405046460 255194144 763368572 895732070 810960492 48616608 876667000 297625619 832457349 717673233 209364534 216391150 30408472 104885428 487521638 320275411 361947060 139804344 263473374 177540682 653285654 139161332 273971423 970010568 864041941 661969713 158876512 23392842 327077293 619774947 53321185 759801461 480025809 119153560 548623070 717650105 121165550 627082559 167649889 508766834 472774965 513502444 788666294 954122492 518116018 349617452 622760308 441026614 627995212 383511952 637633855 272137315 76722965 303777994 220785566 677711961 523201684 500682536 515249053 494952391 231077498 512544941 309744887 101785468 107283844 614146338 878711009 925074215 96658 449852411 111401579 104982642 331199867 740091918 381106059 976020256 480684322 928039715 859096379 415149712 205019666 677688790 237310720 138290855 161046637 626512630 80317051 997737514 426753779 145955255 218921761 90015586 24164206 326469424 590214345 879790062 34713943 783450837 263341583 919488995 870782266 17662216 453568435 478396740 805462816 30736179 840058355 293982113 840919253 941889217 265664633 334362920 211249622 892444822 937741591 534268400 399764559 95671592 485683508 942105606 273979218 496909338 836123227 735929085 355866551 116827895 147346423 983492910 990118539 437446878 138148968 705052780 921309455 254938845 662389016 128729678 898549389 740163153 773021957 215970830 180645985 46190706 331821532 432517578 982561866 205035455 652768515 800468538 958329931 860159304 640013221 494679313 429477123 273575208 652976466 403160821 347713735 832238033 636450330 154659816 201089427 26233420 835608281 245444954 841636227 670080386 236818385 388812537 2832501 649341843 647719795 190161036 231508182 984426769 217074869 294708700 791481695 282365638 483057499 475083130 996248947 422386999 445364789 821756479 279127654 121320361 365814576 769939421 109243841 345021835 306714675 800509934 646165105 194032925 422692366 291478218 747286639 696392804 775051706 547530453 439681865 922725738 879137589 856139674 697244775 141233869 949682703 778763601 51301752 768559818 828396617 973775849 231710051 888668805 88496711 160057243 154458207 235906564 377838988 594883376 50946859 969183423 486310408 512818575 614130226 314346146 597764789 868140052 502932335 133870547 598888064 759312016 872169852 263646113 907138846 260755883 796821437 785358495 663112567 276116190 183254490 261530655 531232154 367927270 356101505 811660430 576311826 292756053 641014801 897583664 611037486 554514711 802075834 781964349 52608335 884292079 190831935 134207023 441905082 531597100 761449236 757936319 419470974 849982205 611477096 125488685 793400137 623948903 310248610 505069099 763565786 976107242 946152411 994276185 713993751 171703846 833243151 729357345 168581224 721680193 762423606 837616528 837321435 689952091 224324036 714823707 621416419 484425950 422826153 772625548 508292583 228047061 535221432 770706534 90934843 425799765 780894926 801333168 690352315 921359746 977552629 329460352 360282689 567235282 687513115 783444830 994234402 809194223 334366753 672627053 422211438 931866859 304812124 721778606 21030405 992429074 448909492 489330238 701543126 163108151 289118835 843365391 636850400 302912929 424947394 733529358 406070034 21950072 154135579 890279208 43953530 21401593 695185265 305321463 690563293 258159166 840429142 78660311 90940628 45060569 471675881 966330376 405963940 559563087 470793111 442981092 660093266 45607424 874187811 974500524 252248101 135629649 677716092 608014450 937481557 391757554 868773813 636780619 603810808 508024840 434885756 814717977 972481797 545234586 400002766 814962982 614986440 333886233 370364995 15621267 254122962 68337119 56423705 208013207 24243793 280611936 494379087 531770367 659521174 547206033 18223926 432298651 886231692 54784858 809972726 151716535 50073240 386979036 100194101 544075162 112026424 63964102 90942123 856383133 934374709 786067026 855397029 146760262 395439414 703471863 553069849 277069763 125093624 433277825 827657965 806896475 399573463 282384816 137680439 707552850 784197810 23224973 15201504 79809463 237696818 264026079 672872331 484307773 978956844 769558518 569947797 939769329 829559707 22560713 179132249 763806340 511780049 753360106 937365173 233597828 456601920 39149197 123950005 897490930 725784336 970362486 179492809 217738325 322689858 465999346 450489479 515071579 506027665 562829718 893431603 997996904 789534214 459821313 285625826 923934293 469610022 846482176 846223433 628008248 522321050 672992373 836385968 840050905 866937777 854026206 33565328 974099491 912913687 956718426 592060843 878699988 546795921 656585131 885811512 106326641 390938876 534597996 617381157 788911803 994940874 825904193 879011309 722731254 830908094 880200193 446659135 279004507 988603419 97870884 550479371 202663346 967883502 554217915 572861846 754884938 313999567 78738081 552782295 677953505 808870205 309726142 818837632 286999849 149490062 360426983 617837585 729096520 470081871 830336023 163507446 282515007 551809051 536038085 297564562 607449031 370293280 131291231 63526194 539039358 427590011 230930128 824088891 49786431 679586441 742913872 142612524 145990891 928956177 482499231 187387608 447365121 598921691 861663639 388911431 519622660 309044806 23934455 453001949 595285649 691013144 682273487 788086567 199975879 451933418 993601121 419107088 450244049 611043741 335446712 811260020 824470159 470381189 305113445 951724181 386326455 527726511 18517090 912203972 473261464 750149070 318009543 869943928 912557097 434845789 544071432 42174323 629644780 283752901 417576774 418997443 461688109 311429221 16622551 174460873 461354211 247172629 612171104 74105117 859737868 652038584 871947689 598571801 914560513 107988295 998437203 147482403 75394049 289660548 549033178 894905367 440344366 393352408 732784170 260388994 481896818 154569529 586177220 480181044 204462059 131260039 831606945 527364315 893402808 51140334 226994632 157898888 88786641 660886701 658860107 820329562 954549049 232609592 888383652 285932098 980898686 179514460 579156208 430879463 62330888 637465893 969294692 984052417 859825483 139003722 928833478 395533525 528034196 83958551 791390367 480611558 612414354 813638681 558578810 724978120 649697357 733611703 414662672 20297890 933306914 429919999 971182773 807793999 989615068 227526959 225131656 139452102 98810258 928604359 98432027 918358052 634127676 527538106 954641345 484694780 101769126 495369233 911224693 145921839 317918386 984651533 62721817 374099413 264005556 806919593 14956494 965685713 5651722 228014479 50471347 831334074 222209527 634177667 334747225 245116366 788568479 28040179 502843400 178709572 87778433 713762372 745318036 28731743 343727151 268833058 683980025 567174727 314464925 837185712 96303383 648258873 33658818 720977332 664763519 556481738 89493509 863877566 357178244 788172218 934207317 372024083 288379821 319015291 867898761 126014171 326140688 235656233 680263812 78189943 810679090 72648792 102889741 920395713 786138765 106365174 248422372 529340419 595239553 93544717 869456211 753049116 604632478 441211814 914504490 949136198 603236418 445785989 506380808 991273209 755506291 801190160 629518385 615337796 769035339 629245600 150675276 753927253 581552851 375624813 63682844 376733742 419776075 633849834 551696478 880762578 416465123 413590291 585295792 475846560 84836133 746960345 628931184 767324185 501968816 586584336 908277381 692914536 379104558 440072327 704280081 333459729 503584338 110023685 180101458 712494078 890670232 526049018 387117881 789885956 431708286 473623201 268706791 654573510 391634883 571742314 475450211 173152899 811243612 883667227 227320234 555798422 899206160 370384758 49199282 77344206 777443540 243579548 659747319 899600228 593439395 337053921 34778683 98099723 907792715 819272747 11190939 653892857 284710556 615680758 186221982 606776273 434595569 261578484 242881834 869049781 427729279 896665220 535947156 502093806 239951657 398120241 800559042 662546227 30067562 190366951 556068550 123114372 68924918 156970417 577729083 711698883 891344412 215646601 677248591 265578290 433835927 337264984 948413880 272842569 228040561 123154033 578964442 496918084 527167909 8850553 30765442 798865502 818253525 580479154 409755605 892584966 923045788 398028692 379293294 469149750 799228069 562305049 848356373 728140388 946862164 372232779 661533707 502759351 298746381 364663327 894904752 987078983 307543791 533516545 242996569 384110086 81064850 954135432 374393942 604794149 135250917 758001348 907658034 677333855 65017028 495333690 846074892 316170835 473637471 636316439 203936931 518297957 453765613 676032811 103978903 247152154 200187678 918722029 794255247 263152736 572098301 207278645 150649256 725117734 119913598 8989756 557769802 710677650 404602381 447868374 856748770 710153300 973202885 941785531 798286193 816966856 159319789 885187730 340609660 732009717 633690767 895639453 604192999 261922377 906635740 537664399 139077250 262994060 612299507 641584234 783633359 350639621 651870429 544827014 26695420 353301199 300666158 843532884 216167662 712584520 270438393 87037532 91894357 508849708 179460270 623233722 623070547 350884926 954177682 793684766 186579918 409865335 620696486 548090202 989648538 718064675 449506779 850258008 364872300 324598327 66382634 510873982 468814099 134272759 387896472 864410754 481022246 777039741 258028849 79176421 643360054 192879828 68470691 757239062 482361762 785436232 698506908 372075507 276464997 228232320 464475459 532133994 11117758 756219108 533796907 325050453 443552587 876530473 535535603 399638228 95887335 949107185 66311482 918132339 144070384 353772128 179017105 378261456 579333911 46127709 735967376 306034827 385429760 517565272 169029720 713990778 960920943 589307347 358982782 806893539 29101438 116169206 731751987 770381689 374452278 295024478 579731022 804115004 138617612 994533286 721854318 853057771 75415436 516989148 872158306 273501045 841660114 392553706 897529696 214288270 235353030 480108916 962665127 23439757 442084114 842236408 387225152 392277992 125299550 306376475 586878113 140681960 586860174 267933401 144148932 553117754 878896561 927122925 913231909 696003122 22806191 967770265 195728593 20236780 915471485 750649222 875531338 163978923 625533869 18700748 367559267 260005121 528002641 793517743 641445716 836015077 927764610 517125931 418405036 579799397 106734950 776075398 304502852 389641577 758689829 362604884 530806146 300917556 683093160 345581048 2517835 182613742 234674289 158360170 464434395 152961369 29868254 468528775 319359739 701924098 846024579 503963481 5164646 623123325 432219455 10764437 304214882 196297733 511572369 105159502 430304645 858653606 753714209 623174155 556604458 869544911 107062293 223879212 208938687 328012838 182514600 934837534 775156338 662077549 159612401 518051643 123221848 928338643 775850599 254446234 527063822 608271480 938456025 332448231 428012933 330973147 771701939 453447715 440757185 888324580 540990981 121062343 199475854 838927842 780932238 858459004 545740494 685979282 345735650 632626985 449451170 284504567 198503434 38511071 107053234 367407934 331713613 332183709 454242367 993341901 153461047 428122651 433755874 983893811 637907028 941701020 182125497 341935358 709058810 535899242 386723023 328767992 439777071 431432448 853871130 531106530 773295731 710809745 446941144 936968093 236217378 935295515 747307706 665988091 797379846 971695586 710862507 806376708 781706713 183392085 207511248 194089848 778510797 926289307 960106265 695248455 755088790 647315144 404490551 682100397 680416250 732619027 682581879 100992054 723087839 59062258 991005237 523948015 30349326 579223661 92988762 595266041 10929867 558218830 866815450 373967433 454624435 917317540 667702622 98302532 876485981 257856615 407000152 829154724 172906611 203908992 919623314 568727108 750479332 653259770 574118973 141176322 327392277 184627634 221418245 971077232 841504804 307870556 871981985 596257111 559059044 456374001 855892100 643150211 982761419 370282934 719467387 72231311 694565443 20149434 392503279 952917831 601501438 389030898 632942195 141812655 813175012 955406766 6251532 76755044 692400059 441201942 421587197 338199968 812503417 896100413 955719150 277691949 258883178 698952484 349002272 145754204 853088885 901583536 954537921 14828012 636543409 65165735 229562452 887593278 909052060 579601334 949385529 679314465 583825951 826752206 735020149 395002373 485062139 51532411 503012033 945003815 661003208 728709677 879092569 600855840 614719952 350754802 96758389 320637576 313917181 176811595 528547864 558668323 711103375 470692425 265165565 474616493 640469325 393693474 763630824 558550154 507272412 988055955 674560644 657006958 926718280 161679057 435060102 429600244 226480493 633914571 908296068 273893842 461248225 803080972 564594896 454216733 302555655 415190538 499139189 297455607 147326927 788691702 975131729 487391484 421092692 268673217 871497516 903008493 975008407 729621569 810485793 80947596 390018032 151012420 356412895 540490539 337895036 735557651 291128177 748390410 841205199 430861686 106996974 954439175 97060132 686016756 603632501 959680259 528658028 815480735 47641272 268240905 758122211 584566580 39143461 119312761 837172910 845949224 303989247 705959415 723785013 300860403 77460603 431331479 155649040 38192703 553660792 253391881 750550384 294497389 746681744 360994148 208144472 126549719 974284562 515307858 408891055 905286243 81281826 874072807 134474158 294149513 534606829 735655910 64824764 450726118 578650687 676005796 859784013 821385279 620940669 885410923 182591657 214689194 588435774 448712236 617582906 193549345 307327235 639252505 526203422 81346260 779542086 634011523 73381043 398111835 492986699 932787130 281223839 38593899 507961883 273671906 275453038 145931793 362282525 746131419 837569785 404015425 56633080 525133097 146741824 715360924 415501007 801229173 586364645 530234614 823673270 215138152 612756900 162984312 58719328 11608702 24542634 338267205 218175060 92227899 588771706 919338711 445724763 399074182 861183434 819590682 408076876 167512580 165110423 314313969 482096837 673380535 480797126 51727 611013164 793325286 394192880 527545883 87399275 419146318 367936438 640097699 684663720 559487897 817193350 19276631 887204496 638838760 51184103 841302617 286501413 979794922 871242423 607564888 389458029 152232949 29608859 665703711 179714541 927876261 333591746 429302703 355257758 498010585 259365997 38232042 823763984 150474550 852340286 89151475 611878231 906026948 174952087 740798813 507060879 887502404 721639096 575286454 874530232 889185379 315983727 770454034 520020694 947197471 622888125 604202418 970556173 683903072 216162756 898349903 427762038 785635608 477752929 884584940 158536324 230014824 927998812 166436626 142310475 77464751 114189030 84015827 63974409 327141981 739198494 544965584 354073590 424130859 875675118 589387110 222417827 642271822 103048636 5152388 193586900 886621629 892197207 502337308 381589565 177073408 36923365 298612987 135165230 584305058 797752586 322636874 509526814 526516542 798014915 200326444 9683739 55301007 401392157 722895914 136357626 294603139 65935678 121674765 437089312 879256474 576132736 598747969 187158883 542992121 991743086 227624280 748664918 944609817 772322856 247872771 39455850 76818338 404647173 143288534 604952848 36785016 369272928 357526460 731194547 853350403 468432067 55450511 863654677 669002880 526901291 106553651 708315766 38181686 989937999 244227986 248869371 228591612 114462221 827875246 137306992 669846194 982843224 505793172 597860498 464975415 291974320 218181464 332518097 676146726 811122503 385831610 619321438 503025657 101661948 277056142 349364492 351507770 132972462 681353911 747538395 735328713 410765407 918377175 471461137 973164199 899809651 513972973 270961236 100039466 932742462 69275182 171466432 573467778 459632663 971451180 590005560 159465053 23755271 738844367 560344597 193886561 692010963 549826290 587856930 750923664 143265882 543048308 841030636 508900464 284925712 93546528 672194841 182921102 730000134 673291690 952097190 995479501 828967928 626699254 661901230 773291774 259536217 464352077 940527293 877755956 977172254 533901121 264341120 712724659 120227876 506573924 379661073 575676193 643878591 446125737 474747235 256385113 388440729 700892571 649919743 98687757 161490473 811341195 394487137 612354351 799715417 745045096 484669287 774905338 913438162 444623183 442757431 59195752 927678551 868266524 534028700 894052299 912196921 312102794 420560907 88894902 485537092 799829832 213145958 964843514 484703430 163037285 128001106 407551924 29428715 55237650 774097229 209513353 815701677 692590042 1192386 773177286 329844560 700022089 300420333 159077497 827209254 479193715 122895570 659218007 664855346 296196757 41099646 550065932 890934095 925165494 827148512 871978834 142792972 948028725 923902727 660018927 929308758 625441853 334153357 8651210 502148768 789041550 390682281 809949104 385283991 596492862 725332332 11829256 111537761 333805091 355401045 77322999 529772168 363004164 996138958 307925413 377932242 911179297 16139891 113386083 649851465 871545978 304195794 44431651 604228029 655428434 533637808 388300845 752826727 77272566 414740455 224030707 289207836 774877097 664342346 655184781 158598131 628858553 674125598 34130728 6979815 814418073 658723427 933878912 246831760 592476387 292545230 536729718 240779115 716987364 301627631 519280781 849807633 971281905 313933338 721988361 87565921 902739567 993376893 15872667 314098802 122095981 146378099 56125352 715947287 405456961 838047932 22810335 596719150 794548157 15294735 71110162 362779325 645638092 171316498 545559251 744401462 790104320 314578658 49932930 615689363 112358000 992996091 718120264 436574053 137803078 284785498 802607395 247012320 925199542 543888490 981373175 326443367 984828667 143803674 557145561 274473103 771225961 630497055 865576683 491779549 671858480 829752898 27352424 374817403 629352194 743327618 853564648 522139063 787548661 525224793 811850046 44549136 558607253 754704166 965977566 473559113 236083668 662699512 345985847 270486242 85083023 257093070 923378988 260825178 541100025 999540728 21732069 876505945 424939801 206821127 776382001 147161882 461390765 320553183 615084100 901943374 646322168 891987385 68887481 841259631 321434330 293073952 321880636 961341415 17468624 224780263 996401052 857659641 706245261 876392963 10953795 897869399 659578108 624240702 795296124 253155564 629648875 751473598 647079602 380357514 889070932 943907946 280015225 826031325 741725852 958071619 750583299 762409332 917157036 517078301 301692953 828280773 136921023 215839332 291675680 338422718 577188282 556156242 95375444 15235156 305563996 544364306 311873675 449529765 790764421 295797253 169937635 53514551 206229960 529120892 509018353 268316417 830196942 375491166 703449603 899844155 159280971 358043574 948722620 610941198 371201202 232998973 93080380 653691413 898209907 394275227 233209042 27248358 964495280 129533278 606738783 145367440 135621305 843719438 871217936 773273768 431787955 858332626 415232522 525851954 368839531 299787889 541756791 365942124 6325889 627145992 31229160 752767155 961104959 850886504 692945707 318462802 560794055 57396204 775071318 983145882 603274578 412179444 347033307 216010524 523626876 684205074 627674332 96048050 222110685 492041552 229524718 820273885 926085227 795432423 300977192 665842697 422193500 597521584 262634504 469653608 456028541 149880281 447943286 983545659 505043410 332079970 989514550 503953618 983070181 599313151 400097163 477691982 618305507 491337091 497521017 918552402 382965327 847406135 942611209 103653234 658056425 439937367 578852224 652976589 474880778 664720551 614173243 748492085 232873809 96891692 147780500 459748142 135248037 193557113 875033502 203483225 544388641 35813183 546959661 770120021 558713198 54043237 641367728 592911822 697469724 350123636 833372755 162887988 269406153 359542525 565556292 757397462 284850137 379668838 597315710 971928375 608892507 937924650 878604258 630810768 933073961 393947706 20250505 211233781 158794486 652521947 968153466 737426142 983225351 7947901 723335768 974273535 960810369 354260442 184565711 347240797 596177174 573552486 182325349 383151261 527332501 92015976 15361261 957819209 36518350 138781309 441079617 355911251 91393995 109384237 534370709 396038157 686150696 970572092 513196922 856825348 701187829 192994788 527052255 112347237 757890676 370810424 159256097 279675515 911266914 565906624 430033270 192563152 792609983 768065772 72669532 74882117 941634531 886266802 47499539 437058116 532799196 271211601 439087201 855661004 585152423 526753064 477178155 204317252 228341500 704649932 722898533 250805465 460526445 9642183 440712755 86510728 587144131 872412928 977759741 402380288 601079752 542578459 869778537 580278767 213130211 939397522 614045450 29972432 64407200 534618082 391309087 498763222 875287827 639154778 77036704 199339051 311361349 557561484 497693782 287828420 808102093 546299327 600556410 62033202 637859900 496190436 60572632 510292168 117938248 43529794 473151234 528291464 999229000 351565628 302638217 770447128 923703488 583986524 49433731 759687455 833848289 384310894 392945008 602973342 861337583 213169020 320898334 316264668 583654307 439492236 245316034 430105382 293473193 795807044 57839654 144850924 390897992 149867448 629778290 321008658 629737705 523489428 70867480 659997594 39473313 785814107 304563430 594099515 107685941 495506618 323694571 966712865 617985445 40624708 562560153 4459860 998119618 338107820 228380150 5697580 257874279 674414534 779944527 59987429 417048704 929850298 561200835 623611371 843921649 396387400 482632725 552587824 927795249 665542921 210563948 592363491 584428310 341664328 656268266 22639959 229251431 525167933 477045941 131192766 812611099 751044868 868519107 374155724 542171700 761828278 481599952 525778328 543045287 47591272 699328313 817384507 450240108 512118707 158455293 644973921 610930910 838460682 460515637 495087789 85712508 120098248 550068163 224566877 641453283 365110803 268827337 282644301 651152993 643723871 834448909 929117635 40840161 514553130 954384744 92388291 285484325 339655662 802589208 69939262 888603803 372355050 39918299 266709239 961925720 470804638 441658780 776354401 244300135 375675676 499549333 733212674 816891605 626960624 392860026 744680354 662982321 588384071 272170551 172641166 626747308 968642475 567400344 397106885 33147359 517826071 791171115 412271925 100584231 13632457 538825798 676991482 786227413 866948505 810595904 114842616 819142872 84628164 422795539 504877735 894505843 673699951 24467760 455380180 201266451 631078504 249860157 323587953 654216432 326017155 113419756 539874550 238204303 131997679 877611722 401178408 397527985 840824423 430229614 386615583 941650669 863182620 403959614 319262490 876356797 502908518 180388904 452027758 354645439 369003341 30239151 764642117 623288578 358261998 136180851 953940310 79653995 387655863 183528009 742495503 70057791 207347368 377862453 555669740 197740052 953147432 258175320 593592264 199250994 361144568 511544920 720362285 561672758 964687140 191045533 712901831 529279244 5949290 604736785 633709234 171804927 380764918 497236390 267837333 236710971 488165688 833474978 353761684 561679435 344194180 443402533 81105543 533142546 530086085 23961752 323187460 245779676 801223876 223101076 557484255 72208185 982349888 797549027 38985297 884445847 747043737 631953366 116544127 186712873 948094266 13796277 579499165 685208850 150685465 3711673 197029125 54845691 759964051 811954779 454800708 500735351 427472230 22604340 648452230 91240116 974090699 650202701 802325278 532647177 351368892 542560070 753265520 389323546 11024387 324932744 640328824 914977797 886478014 91792216 418238534 928633774 665398529 57533387 606087245 230388136 729183445 278893044 842672553 24447105 232300771 330877256 378555412 458140432 683190609 699430130 777099696 18965728 252345819 858637616 497003770 740633974 11264713 744245325 119001948 378846562 128274564 370944148 669955641 398913812 781709437 993036681 283289691 804579837 766417720 677598169 290544752 142042060 873113751 73700384 481381051 323423612 840253239 52363499 61562176 779918890 613539966 396475531 191448771 854442306 949527100 650922841 212824974 155897177 599747061 455326573 197468942 150717442 324276795 437232990 579420529 431821831 912879043 926021642 261439332 863128998 348810759 817577898 792260796 313311283 33259507 534892002 564901133 426709735 7052091 799704121 547321110 543908139 177662674 962968496 265761395 729129224 31311382 167489322 892760003 181243022 761818341 856020500 627910515 89424390 890282303 785725525 115398248 573251657 887898566 8721476 253683907 537148462 368378433 8666624 295165245 240291184 319659902 78233864 357292572 617083324 499767823 536546947 643945072 971880325 552465988 656731490 904107403 692141697 26824633 340932570 963849090 400145792 984999145 497293303 958140170 249122136 626912090 430720450 779857552 959156513 935150477 697201597 895364179 891650307 110868388 33277423 440708217 758094722 781040829 358847391 498827641 998263613 672418120 979972601 842610711 730731574 633835531 262097522 989526632 578428190 460801176 560644750 679668575 869446136 654907304 456589718 859334372 500927354 332844650 364754186 25526191 677030223 387675067 983443055 301084072 645961873 177339491 345288123 969128321 910332001 106795337 202048042 373116284 812513158 991064639 633803111 498975359 386574905 444155657 509002359 180332532 844813975 727946587 290839827 436578581 432716802 290317801 637167318 28601729 199434162 392771273 299335606 803787712 941084512 3650916 515359353 335596604 960634130 953671799 933865878 345276013 873732299 274767023 741083289 699657456 463984804 639142002 286129089 802201818 449817919 466453661 421595225 718202545 275923414 61538334 11868052 9160856 617232442 372862562 504084095 966936920 775346868 737260503 342861890 126373705 648799820 522553135 409906302 82203188 199663934 849039124 31498858 607715582 326459120 65583822 340124273 689558974 59124241 455759676 37862961 279835296 385718490 143570531 373623890 482839779 148309412 343252567 999835190 613586563 342244534 944145313 944018752 627902226 988507688 798353067 548631853 663918755 174826386 34048976 910887667 6270476 798160319 866259888 742509793 896928402 367583344 618889743 764849925 434198315 377591575 84507591 139846493 89931739 98254739 734770619 200206830 489984121 897503447 30573933 759773267 685122161 242787136 581436784 282311215 809107607 371953588 441151176 358478291 606411842 780217077 478611699 830124993 441513485 952519770 503723973 309594026 743427556 795170751 71105843 648770734 804686900 215840454 390917034 588703783 787976850 387320646 91998108 537609333 34146300 409049880 664727109 680180773 492987988 726699144 705968455 926372844 735687101 271392940 625823801 64081715 699031600 203214876 395477237 75815493 347818161 299721593 630423124 935882699 740427652 4214136 545421806 998350562 879406858 841198807 446009824 954234179 697313237 308752983 332601050 860017223 289817095 922181713 254941941 990295035 106851157 728960443 724251914 705555235 949653403 938305253 612022202 867174830 881826054 126421907 363023385 635979257 127644090 222305703 639299366 268129264 397861891 772037577 932814808 79846403 26964722 741663569 355040058 366925393 181016706 267077243 237474362 58059717 80603599 192489094 949920412 17130430 659316535 688089883 321323201 669420340 349201089 928067506 284299154 694831 634589600 248421648 846977416 54300104 267111122 666946246 850391411 609260132 168210001 280576598 236293232 461349243 81164138 986200066 380501733 445920104 824086121 565705117 93704076 949720576 7905800 771011442 419972422 808341675 319277709 977188818 673434097 260980782 112151016 681232943 836234514 682144124 244064390 978598552 880299270 121880070 266519132 227448310 324456051 675958453 272268129 549449521 169379882 283473998 469175098 667364015 260290646 794022094 118571508 627289525 371062905 641275220 558997656 941904346 751704923 636753161 159072126 829472922 423300233 233621011 469114931 919776531 54352374 506434236 32628568 60209800 984115331 240824744 545818236 296112149 168830160 266474237 655894465 265598074 600256131 53092130 238652966 987320923 139076179 776774516 174771293 371387107 522846185 741615639 697367606 705388806 300350533 151410847 525018484 605737883 761173386 912300195 318346659 859924862 770954530 469877354 69348172 106326767 79661753 572380555 687951148 552688697 751172747 522959496 181790479 773360690 355345474 37244627 873042825 198098183 368730505 754231337 471873114 246580066 729807629 986947326 660409022 521851074 500145517 633902993 642797927 354976590 886238184 203349077 68233131 115229222 839907695 662687687 344591212 315859074 901404858 27858376 400722908 588070643 983282919 883715870 834476026 482464053 797510069 423848154 789938441 584301556 112963040 699612746 342984524 665170174 375063158 787225834 85853737 519124922 845808708 191520483 831369027 151972953 70455809 612389873 507619645 792874296 843778100 311811122 833648765 514180617 84426844 180974559 992764642 462987320 768884316 926313846 420608903 782199283 112182189 49545369 333072679 638396755 137668476 568137598 241783071 762320442 822676225 770728601 472127652 690707169 557108682 79578458 168995333 874879522 560547131 114562833 243611302 172719485 343910521 49738600 470989153 272132600 879149353 467620369 492689223 822266634 405123296 20968244 162607076 300023198 871033588 786178687 563737251 17874505 51358936 652329339 851381936 703731078 120187868 974880888 453478688 59329043 135736164 556500328 407890165 708460788 421101566 454697040 340643394 517058957 742771915 853298094 806980868 70699643 783076779 242451544 518909050 315638693 775363343 65991728 709902981 810721941 47930180 9441802 597616567 298747755 846247888 551037162 893406049 790044802 85562675 148596451 850830513 231140812 647710329 173642190 888204385 687679852 323675913 487591155 557314050 260887023 637260073 461993494 888826177 237164702 962235118 863748052 972551565 293792294 314835234 343661549 654026205 613353695 152486048 921791305 443968001 996887307 35970808 894028331 226356709 799100466 76782603 704315650 503568592 402506355 157090646 688368895 697914601 782351238 77413990 17584536 329854157 287931692 578280550 826146616 550396719 835332831 276329603 637693007 943046647 168046145 441383802 778581184 86149646 247424625 733302083 966264407 617519908 874436130 999142948 946618255 449746800 490517839 397196240 48733043